A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张亮 中级黑马   /  2012-4-15 11:58  /  2313 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

为什么实现多线程,最好是实现Runnable接口?
Runnable方式和Thread方式的区别是什么?

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

3 个回复

倒序浏览
Runnable实现与Thread继承
实现方式和继承方式有什么区别?
实现方式的好处:
避免了单继承的局限性。
在定义线程时。建议使用实现方式。

两种方式的区别:
继承Thread :线程代码存放在Thread子类run方法
实现Runnable:线程代码存放在接口子类的run方法。

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
1、在java中可有两种方式实现多线程,一种是继承Thread类,一种是实现Runnable接口;
   Thread类是在java.lang包中定义的。一个类只要继承了Thread类同时覆写了本类中的run()方法
    就可以实现多线程操作了,但是一个类只能继承一个父类,这是此方法的局限
2、两种实现方式的区别和联系:
   在程序开发中只要是多线程肯定永远以实现Runnable接口为主,因为实现Runnable接口相比继承Thread类有如下好处:
   1)、避免点继承的局限,一个类可以继承多个接口。
   2)、适合于资源的共享

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
1.继承Thread来创建线程类的方法,在继承了Thread后,不能再继承其他类,这样灵活性就不如实现Runnable接口来创建线程类的方法了。
2.使用实现Runnable接口来创建线程类的方法可以达到资源共享,虽然继承Thread类来创建线程类的方法也可以实现资源共享,但是相对之下就比较麻烦了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马