黑马程序员技术交流社区

标题: java多线程的疑惑 [打印本页]

作者: javamov    时间: 2013-8-21 15:13
标题: java多线程的疑惑
本帖最后由 javamov 于 2013-8-24 14:55 编辑

java有两种实现线程的方式继承Thread类和实现Runnable接口,
但我们也可以用线程池去使用多线程。

我想知道的是这几种方式有什么区别,什么时候使用更好更方便更效率。


作者: 左岸    时间: 2013-8-21 16:15
使用Runnable接口创建线程
1.可以将CPU,代码和数据分开,形成清晰的模型
2.线程体run()方法所在的类可以从其它类中继承一些有用的属性和方法
3.有利于保持程序的设计风格一致  直接继承Thread类创建对象1.Thread子类无法再从其它类继承(java语言单继承)。
2.编写简单,run()方法的当前对象就是线程对象,可直接操作。
在实际应用中,几乎都采取第一种方式
作者: 黑马-文鸿利    时间: 2013-8-21 16:38
① 在类来继承抽象类时,只需实现部分具体方法和全部抽象方法,而实现接口则要实现里面的全部方法。
②在接口中无成员变量,而抽象类中可有成员变量。
在Java中引进接口主要是为了解决多继承的问题。

实现多线程主要继承Thread 类和实现Runnable接口。
作者: 645420297    时间: 2013-8-21 22:43
最好的是实现runnable接口
作者: Lop_adoule    时间: 2013-8-21 23:45
{:soso_e141:}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2