哪种方式最好在java中运行一个线程?

时间:2010-11-30 01:49:31

标签: java multithreading concurrency

  

可能重复:
  Java: “implements Runnable” vs. “extends Thread”

我应该使用Runnable接口还是从Thread类扩展?一个又一个有什么好处吗?

提前致谢。

2 个答案:

答案 0 :(得分:3)

  • 你只能扩展1个类,所以如果你有多个继承,你只能使用一个接口。我从不扩展Thread类,但实现了runnable / callable接口。
  • 我使用executors来帮助我进行线程管理。

答案 1 :(得分:1)

据我所知,这只是一个偏好问题。

我自己的偏好是传递一个Runnable,因为我不喜欢子类化方法,也不喜欢Thread实现Runnable的事实。 (实现run()的子类化线程滥用了子类化应该表示的“is-a”关系。制作线程实现Runnable并没有真正添加任何值,它允许使用一个线程作为runnable等无意义的事情另一个线程的构造参数。)

相关问题