首頁 > Java > java教程 > 主體

如何在Java中寫一個實作Runnable介面的類別?

WBOY
發布: 2023-05-09 19:52:15
轉載
1641 人瀏覽過

Runnable介面只有一個方法run(),我們宣告自己的類別實作Runnable接 口並提供這個方法,將我們的執行緒程式碼寫入其中,就完成了這一部分的任務。

但是Runnable介面並沒有任何對線程的支持,我們還必須創建Thread類別 的實例,這一點透過Thread類別的建構子public Thread(Runnable target);來實現。以下是一個例子:

public class MyThread implements Runnable  {   int count= 1, number;   public MyThread(int num)  {   numnumber = num;   System.out.println("创建线程 " + number);   }   public void run()  {   while(true)  {   System.out.println  ("线程 " + number + ":计数 " + count);   if(++count== 6) return;   }   }   public static void main(String args[])  {   for(int i = 0; i 〈 5;  i++) new Thread(new MyThread(i+1)).start();   }   }
登入後複製

嚴格地說,創建Thread子類別的實例也是可行的,但是必須注意的是,該子類別必須沒有覆寫Thread 類別的run 方法,否則該執行緒執行的將是子類別的run 方法,而不是我們用以實作Runnable 介面的類別的run 方法,對此大家不妨試驗一下。

使用Java Runnable介面來實作多執行緒使得我們能夠在一個類別中包容所有的程式碼,有利於封裝,它的缺點在於,我們只能使用一套程式碼,若想建立多個執行緒並使各個線程執行不同的程式碼,則仍必須額外創建類,如果這樣的話,在大多數情況下也許還不如直接用多個類分別繼承Thread 來得緊湊。

以上是如何在Java中寫一個實作Runnable介面的類別?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板