Runnable
接口應(yīng)該由那些實(shí)例傾向于由線程執(zhí)行的類來實(shí)現(xiàn)。類必須定義一個(gè)名為 run
的無參數(shù)的方法。
設(shè)計(jì)該接口的目的是為執(zhí)行代碼的對象在其活動(dòng)時(shí)提供一個(gè)公共協(xié)議。例如,
類 Thread
實(shí)現(xiàn) Runnable
?;顒?dòng)的意思是某線程已啟動(dòng)并且未停止。
此外, 當(dāng) Thread
未子類化時(shí),Runnable
提供了使類變?yōu)樯У霓k法。通過實(shí)例化某Thread
實(shí)例并將自身傳送進(jìn)去,使得實(shí)現(xiàn)Runnable
的類不必子類化 Thread
就能運(yùn)行。大多數(shù)情況下, 若僅打算覆蓋 run()
方法,而不覆蓋其它Thread
方法,則應(yīng)使用 Runnable
接口。這是很重要的,因?yàn)槌浅绦騿T打算修改或增強(qiáng)類的基本行為,否則不應(yīng)將該類子類化。
Runnable
的對象創(chuàng)建一個(gè)線程時(shí),啟動(dòng)線程將引起對象的 run
方法在那個(gè)獨(dú)立執(zhí)行的線程里調(diào)用。
public abstract void run()
Runnable
的對象創(chuàng)建一個(gè)線程時(shí),啟動(dòng)線程將引起對象的 run
方法在那個(gè)獨(dú)立執(zhí)行的線程里調(diào)用。