使用匿名內部類實現執行緒,new Thread(new Runnable(){}) 和 new Thread(){}
阿新 • • 發佈:2019-01-10
就是利用匿名內部類實現,補充下,做個筆記吧
import java.util.Date; public class ThreadInnerClass { /** * @主要看使用內部類怎樣實現一個執行緒 */ public static void main(String[] args) { // TODO Auto-generated method stub new Thread(new ThreadInner()).start();//相當於new Thread(實現Runnable介面) // new Thread(new ThreadInner(),"執行緒1").start();//同上,(取個名字)相當於new Thread(實現Runnable介面),ThreadInner物件操作執行緒 // new ThreadInner().run();//執行緒也會執行,不過是這個main在操作執行緒。 /* new Thread(new Runnable(){//相當於是實現runnable介面 @Override public void run(){ while(true) { try { Thread.sleep(1000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("1"); } } }).start(); */ /* new Thread(){//直接重寫run方法 @Override public void run(){ System.out.println("2"); } }.start(); */ /* new ThreadInner2(){//相當於繼承Thread,重寫run方法。和上面直接重寫run方法同理 @Override public void run(){ System.out.println("3"); } }.start(); */ } } class ThreadInner implements Runnable{ @Override public void run(){ while(true) { try { Thread.sleep(1000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println(Thread.currentThread().getName()+" " + new Date()); } } } class ThreadInner2 extends Thread{ }