Runnable接口、匿名内部类、Lambda表达式实现多线程代码对比,谁更简便

package com.chunzhi.Test03Lambda;

public class Test02Lambda {
    public static void main(String[] args) {
        // 使用实现Runnable接口的方式实现多线程
        // 创建Runnable接口的实现类对象
        RunnableImpl run = new RunnableImpl();
        // 创建Thread类对象,构造方法中传递Runnable接口的实现类
        Thread t = new Thread(run);
        // 调用start方法开启新的线程,执行run方法
        t.start();
        
        // 使用匿名内部类的方式,实现多线程
        new Thread(new Runnable() {
            @Override
            public void run() {
                System.out.println(Thread.currentThread().getName() + "新的线程执行了");
            }
        }).start();

        // 使用Lambda表达式,实现多线程
        new Thread(() -> {
            System.out.println(Thread.currentThread().getName() + "新的线程执行了");
        }
        ).start();
    }
}
package com.chunzhi.Test03Lambda;

public class RunnableImpl implements Runnable{
    @Override
    public void run() {
        System.out.println(Thread.currentThread().getName() + "新的线程执行了");
    }
}

 

posted @ 2020-11-14 21:31  春志  阅读(249)  评论(0)    收藏  举报