Lambda表达式-实际应该用-线程

/**
 * @ClassName Demo
 * @Description Lambda表达式--线程
 * 
 * @author TianJianWen
 * @data 2019年11月14日下午3:27:26
 *
 */
public interface Demo_Thread {

    public static void main(String[] args) {
        // 使用Lambda启动线程
        // 1.传统方式使用
        Thread t1 = new Thread(new MyRunnable());
        t1.start();
        // 2.匿名内部类使用
        Thread t2 = new Thread(new Runnable() {
            @Override
            public void run() {
                System.out.println("t2 running...");
            }
        });
        t2.start();

        /**
         *  3.Lambda使用
         */
        Thread t3 = new Thread(() -> System.out.println("Lambda表达式启动》》》t3 running..."));
        t3.start();
        // 更简写法1
        new Thread(() -> System.out.println("Lambda表达式启动》》》t4 running...")).start();
        // 更简写法2
        Process.process(()-> System.out.println("Lambda表达式启动》》》t5 running..."));
    }
}
class MyRunnable implements Runnable {
    @Override
    public void run() {
        System.out.println("t1 running...");
    }
}
interface Process {
    // Java8中允许接口中定义非抽象方法 前提该方法必须为 default 或 static
    static void process(Runnable runnable) {
        new Thread(runnable).start();
    }
}

发布了16 篇原创文章 · 获赞 0 · 访问量 5063

猜你喜欢

转载自blog.csdn.net/jianwen_tian/article/details/103632011
今日推荐