1. 程式人生 > 實用技巧 >JAVA高階複習-多執行緒建立方式一(匿名子類的方式呼叫執行緒中的run()方法)

JAVA高階複習-多執行緒建立方式一(匿名子類的方式呼叫執行緒中的run()方法)

/**
 * @description:練習:建立兩個執行緒,一個執行緒遍歷50內的偶數,一個執行緒遍歷50內的奇數
 * @date: 2020/7/25 11:02
 * @author: winson
 */
public class CreateThread2 {

    public static void main(String[] args) {
        //1、傳統呼叫方式:例項化後,使用物件呼叫執行緒;
        MyThread1 t1 = new MyThread1();
        MyThread2 t2 = new MyThread2();
//        t1.start();
//        t2.start();

        //2、建立Thread類的匿名子類的方式(面向物件中的知識點)
        new Thread(){
            @Override
            public void run() {
                for (int i = 0; i < 50; i++) {
                    if (i % 2 == 0) {
                        System.out.println(Thread.currentThread().getName() + ":" + i);
                    }
                }
            }
        }.start();

        //java8中匿名子類的寫法
        new Thread(() -> {
            for (int i = 0; i < 50; i++) {
                if (i % 2 != 0) {
                    System.out.println(Thread.currentThread().getName() + ":" + i);
                }
            }
        }).start();
    }
}


class MyThread1 extends Thread {
    @Override
    public void run() {
        for (int i = 0; i < 50; i++) {
            if (i % 2 == 0) {
                System.out.println(Thread.currentThread().getName() + ":" + i);
            }
        }
    }
}

class MyThread2 extends Thread {
    @Override
    public void run() {
        for (int i = 0; i < 50; i++) {
            if (i % 2 != 0) {
                System.out.println(Thread.currentThread().getName() + ":" + i);
            }
        }
    }
}