java建立執行緒的兩種方法
阿新 • • 發佈:2019-02-01
本人小白一枚,初學java。感覺java學起來非常自然,寫起程式來思路也很清晰,剛剛學完多執行緒程式設計一塊,所以想將一些比較重點的知識點寫下來,防止遺忘。
java中建立一個執行緒有兩種方法:
- 繼承Thread類,重寫run() 方法
- 實現 Runnable 介面 run() 方法,將一個物件例項作為建立執行緒的引數
下面詳細介紹這兩種方法:
1.繼承Thread類,重寫run() 方法
用一個類繼承 Thread 類,重寫其中的 run() 方法。通過建立該類的一個物件例項,就成功地建立一個執行緒啦!
舉個栗子:
//MyThread類繼承Thread類
public class MyThread extends Thread{
//重寫run()方法,自定義執行緒要執行的任務
public void run(){
System.out.println("I am a thread !");
}
//現在讓執行緒跑起來
public static void main(String[] args){
//建立一個例項物件
MyThread t=new MyThread();
//啟動執行緒
t.start();
}
}
一個執行緒一旦建立並且執行,就會執行對應的run()方法。所以說,要實現一個執行緒,最關鍵的就是自定義run()方法。
2.實現Runnable 介面
Runnable介面中有一個run()方法,只要實現這個方法,並建立一個例項物件,以這個物件為引數,建立一個Thread物件。此時用到的構造器是Thread(Runnable arg0)
同樣舉個小小的栗子:
public class MyThread1 implements Runnable{
public void run(){
//自定義
System.out.println("This is a test!");
}
public static void main(String[] args){
//首先建立一個可執行的物件
MyThread1 mt=new MyThread1();
//將可執行物件作為引數
Thread t=new Thread(mt);
//啟動執行緒
t.start();
}
}
Runnable介面,顧名思義,指“可執行”。將一個可執行的物件傳入Thread的構造器中,一旦執行緒啟動,就會找到其中可執行物件的run()方法執行。
如果對介面的概念不熟悉,可以參考我的另外一篇部落格java的抽象類與介面