关于多线程

kehuan 2004-07-02 04:48:51
class mythread extends Thread {
public void run( ) {/* 覆盖该方法*/ }
}
class mythread implements Runnable{
public void run( ) {/* 实现该方法*/ }
}


请教这两种有什么不同?
...全文
124 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
JohnsonShu 2004-07-03
  • 打赏
  • 举报
回复
我比较喜欢用Runnable接口
rainfall19831109 2004-07-02
  • 打赏
  • 举报
回复
继承Thread类,就可以直接产生线程
实现Runnable接口,就间接生成线程
实际中我比较喜欢继承Thread来实现线程
但由于JAVA本身只能单继承,如果你的情况里非得要继承其他类,那就用Runnable接口吧
我记得有人跟我说过,JAVA的继承不能随便浪费,因为一个类仅仅能继承一个类~
erictang2003 2004-07-02
  • 打赏
  • 举报
回复
从Runnable 对象中创建一个线程的主要原因是
可以直接访问该对象的所有内容.

简单的说,如果线程只有依据某个对象才能执行,则应该定义该对象的类,使它实现Runnable 接口,然后从这个对象上构造一个Thread 实例.
temptation81 2004-07-02
  • 打赏
  • 举报
回复
张孝祥是?谁请指教!
kehuan 2004-07-02
  • 打赏
  • 举报
回复
有点道理
myhotsun 2004-07-02
  • 打赏
  • 举报
回复
不错!建议使用implements Runnable!我记得张孝祥的视频讲座中,有个例子非常好。
bianliuwei 2004-07-02
  • 打赏
  • 举报
回复
楼上的一语道破了天机,java不支持多重继承,而用接口来取代
forgetheart 2004-07-02
  • 打赏
  • 举报
回复
在java中,只能有一个父类,但是可以实现多个接口!

当你想要实现线程,又想从已有的类继承的话 就可以

class mythread extends *** implements Runnable{
public void run( ) {/* 实现该方法*/ }
}
Thinkinger 2004-07-02
  • 打赏
  • 举报
回复
extends Thread使这个子类只能有一个父类Thread,而implements Runnable可以使子类有其他的父类
binny 2004-07-02
  • 打赏
  • 举报
回复
继承了Thread就不能继承其他的

如果你的类必须继承其他的某一个类而不是Thread,但是还要做线程,就实现Runnable
kehuan 2004-07-02
  • 打赏
  • 举报
回复
但总有不同的地方吧
maowu 2004-07-02
  • 打赏
  • 举报
回复
效果没有什么不一样的.

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧