線程--匿名內部類實現多線程的2種方式
阿新 • • 發佈:2018-08-26
back public override int color light 子類重寫 指向 線程
眾所周知,Thread是繼承了Runnable接口並重寫run方法實現了線程。那麽如果在匿名內部類中如何使用線程,並開啟線程呢?
public class Test { public static void main(String[] args) { //Thread實現的匿名內部類 new Thread(){ @Override public void run() { System.out.println("aaa"); } }.start(); //Runnable實習匿名內部類 Runnable runnable = new Runnable(){ @Override public void run() { System.out.println("bbb"); } }; new Thread(runnable).start(); } }
Thread實現代碼分析:
new Thread類,重寫run方法,相當於得到Thread子類對象,並重寫Thread中的run方法,進而.start開啟線程。
Runnable實現代碼分析:
new Runnable接口,重寫run方法,相當於得到Runnable子類,run 方法相當於子類重寫Runnable接口中的run方法,返回一個Runnable引用。實則為父類引用指向子類對象。
而開啟時,需要使用Thread類中Thread(Runnable target)
構造方法,得到Thread對象後,再.start開啟線程。
線程--匿名內部類實現多線程的2種方式