实现线程的Thread和Runnable的区别

Thread 和 Runnable 两者之间的区别

一个类继承Thread,不能实现资源共享,因为一个类只能继承一个父类。
但如果实现Runable接口的话,是很容易实现资源共享的,因为一个类可以实现多个接口。

实现Runnable接口比继承Thread的优势:

  1. 适合相同程序的代码共享同一个资源
  2. 避免了java中单一继承的局限性
  3. 增加了程序的健壮性,即实现了解耦操作,代码可供多个线程共享,代码与线程之间相互独立。
  4. 线程池只能放入实现Runnable或Callable类线程,不能直接放入继承Thread的类

扩充:在java中,每次启动程序至少有两个线程启动,一个main线程,一个是垃圾回收线程。因为每当使用java命令执行一个类的时候,实际上都会启动jvm,每一个jvm其实就是在操作

发布了16 篇原创文章 · 获赞 20 · 访问量 291

猜你喜欢

转载自blog.csdn.net/duanyaowei/article/details/105593343
今日推荐