创建线程的五种方法
创建线程的五种方法
1.通过显示继承Thread类的方式来实现
2.通过匿名类内部类的方式继承Thread类
3.显示创建一个类,实现Runnable接口,然后把这个Runnable的实例关联到Thread实例上
4.通过匿名内部类来实现Runnable接口
5.使用lambda表达式来指定线程执行的内容
这五种创建线程的方式,没有本质上的区别(站在操作系统的角度),核心都是依靠Thread 类,只不过指定线程执行的任务的方式有所差异。
站在代码耦合性的角度 ,细节上有点区别,通过Runnable/lambda的方式来创建线程和继承Thread类相比,代码耦合性要更小一些,在写Runnable或者lambda的时候run中没有涉及到任何的Thread相关的内容,这就意味着很容易把这个逻辑从多线程中剥离出来,去搭配其他的并发编程的方式来执行,当然也可以很容易改成不并发的方式执行。