Java——匿名內部類實現執行緒的兩種方式
阿新 • • 發佈:2018-12-26
package com.yy.thread;
public class Demo4_Thread {
public static void main(String[] args) {
demo1(); //匿名內部類,第一種,繼承Thread
demo2(); //匿名內部類,第二種,實現Runnable介面
}
private static void demo2() {
new Thread( new Runnable() { //1,將Runnable的子類物件當作引數傳遞給Thread的構造方法 ;new Runnable(){}:實現Runnable介面
public void run(){ //2,重寫run方法
for (int i = 0; i < 1000; i++) { //3,將要執行的程式碼寫到run方法中
System.out.println("wsq");
}
}
}).start(); //4,開啟執行緒
//new到.start();這直接,整部分的內容代表Runnable介面的子類物件,
}
private static void demo1() { //代表Thread的子類物件,Thread類裡面有start方法,可以直接呼叫
new Thread(){ //1,new一個類(){},繼承Thread這個類
public void run(){ //2,重寫run方法
for (int i = 0; i < 1000; i++) { //3,將要執行的程式碼寫到run方法中
System.out.println("aaawsqaaa");
}
}
}.start(); //4,開啟執行緒
//new到.start();這直接,整部分的內容表示Thread類的子類物件,然後.start就會呼叫run()方法,start就把執行緒給開啟,然後呼叫run()方法
}
}