建立執行緒的兩種方式及原理
建立執行緒的第一種方式:
1. 定義類繼承Thread類。
2. 重寫run()。
3. 建立執行緒物件。
4. 呼叫start()啟動執行緒。
class Thread
{
private Runnable r;
Thread(){}
Thread(Runnabler)
{
this.r=r;
}
public void run(){
if(r!=null)
r.run();
}
public void start(){}
}
class ThreadEx
extends
{
public void run(){}
ThreadExte=new ThreadEx(); //呼叫的事重寫的run()
te.start();
}
建立執行緒的第二種方式:
1. 定義類implements Runnable介面。
2. 覆蓋run()。
3. 通過Thread類建立物件,並將Runnable介面的子類物件作為Thread類建構函式的引數進行傳遞。
4. 呼叫執行緒物件的start()開啟執行緒。
class Thread
{
private Runnable r;
Thread(){}
Thread(Runnabler)
{
this.r=r;
}
public void run(){
if(r!=null)
r.run();
}
public void start(){}
}
class ThreadImpl implements Runnable
{
public void run(){}
ThreadImplti=new ThreadImpl();
Threadt=new Thread(ti);//實現的run方法是Runnable子類物件ti的。
ti.start();
}