Thread與Runnable的關係

2021-08-04 17:27:34 字數 701 閱讀 3952

public

class threaddemo

}) }.start();

}}

對於上面的這段**它的執行結果是」thread的run()方法」,但這是為什麼呢?

在看下面這段**。

public

class threaddemo

}) }.start();

}}

上述**的執行結果是

thread的run()方法

runnable的run方法

這就不得不說thread與runnable的關係了。thread實現了runnable。所以在thread類和runnable中分別都重寫了run()方法之後,程式會執行thread的run()方法。

public

class

thread

implements

runnable

@override

public

void

run()

}<

}

上述是thread的部分原始碼,可以通過原始碼發現,如果沒有重寫thread的run()方法,並且傳入了乙個runnable的實現類,那麼執行的是runnable實現類的run()方法。

Thread 與Runnable區別詳解

使用thread實現執行緒不能實現資源共享 class mythread extends thread public void run public class threaddemo02 使用runnable實現執行緒可以實現資源共享 class mythread implements runnab...

執行緒Thread與Runnable實現

當new 乙個thread的時候,就是在主線程的基礎上再開乙個子執行緒,cpu一會兒給主線程用,一會兒給子執行緒用,所以多執行緒會降低工作效率 1 thread 自己實現自己的run方法 public static voidmain string args throwsinterruptedexce...

Thread與Runnable的區別

避免了單繼承的侷限性 a.乙個類只能繼承乙個類 乙個人只能有乙個親爹 類繼承了thread類就不能繼承其他的類 b.實現了runnable介面,還可以繼承其他的類,實現其他的介面 增強了程式的擴充套件性,降低了程式的耦合性 解耦 a.實現runnable介面的方式,把設定執行緒任務和開啟新執行緒進行...