Java中Thread和Runnable区别

类Thread才是Java语言对线程的抽象,

Runnable 是对任务的抽象,对业务逻辑的抽象

另外,Thread内部其实是实现了Runnable接口的,是对Runnable的扩展

实现Runnable和继承Thread相比哪个更好?

a.从代码的角度, Java只能单继承但是可以多实现, Runnable比较好

b.从扩展性的角度:
继承方式,线程对象和任务紧紧的耦合在一起
实现方式,线程对象和任务对象是分离的,耦合性就较低,扩展性就较高

适合多个相同的程序代码的线程去处理同一个资源;在这就是可以避免Java中的单继承的限制,增加程序的健壮性,代码可以被多个线程共享,代码和数据独立。线程池只能放入实现Runnable 类线程,不能直接放入继承Thread的类
综上所述: 实现方式比较好

猜你喜欢

转载自blog.csdn.net/qq_41489540/article/details/109109699
今日推荐