1. 程式人生 > >多線程作業(2018.08.23)

多線程作業(2018.08.23)

線程 對象 pan tar star his 實現 system code

4、設計一個線程操作類,要求可以產生三個線程對象,並可以分別設置三個線程的休眠時間,如下所示:

線程A,休眠10秒 線程B,休眠20秒 線程C,休眠30秒 要求: 采用以下兩種方式方式分別實現該功能: 1,Tread類 2,Runnable
這是實現Runnable接口方法
class MyTh implements Runnable{
    private String name;
    private int time;
    public MyTh (String name,int time){
        this.name = name ;//設置線程名稱
        this
.time = time ;//設置休眠時間 } public void run(){ //重寫run方法 try { Thread.sleep(this.time); } catch (Exception e) { e.printStackTrace(); } System.out.println(this.name+",休眠時間為:"+this.time/1000+"秒"); } } public class thread_02 { public static
void main(String[] args) { MyTh a = new MyTh("線程1", 10000); //定義休眠的對象,並設置休眠時間 MyTh b = new MyTh("線程2", 20000); MyTh c = new MyTh("線程3", 30000); new Thread(a).start(); //啟動線程 new Thread(b).start(); new Thread(c).start(); } }
 1 這是繼承Thread類實現
 2 class MyThread extends
Thread{ 3 private int time; 4 public MyThread (String name,int time){ 5 super(name); 6 this.time = time ; 7 } 8 public void run(){ 9 try { 10 Thread.sleep(this.time); 11 } catch (Exception e) { 12 e.printStackTrace(); 13 } 14 System.out.println(Thread.currentThread().getName()+",休眠時間為:"+this.time/1000+"秒"); 15 } 16 } 17 public class thread_01 { 18 19 public static void main(String[] args) { 20 MyThread a = new MyThread("線程1", 10000); 21 MyThread b = new MyThread("線程2", 20000); 22 MyThread c = new MyThread("線程3", 30000); 23 a.start(); 24 b.start(); 25 c.start(); 26 } 27 }

運行結果:

1 線程1,休眠時間為:10秒
2 線程2,休眠時間為:20秒
3 線程3,休眠時間為:30秒

多線程作業(2018.08.23)