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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 丁岩 中级黑马   /  2012-8-16 16:51  /  1802 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

定义多线程可以通过继承Thread,和实现Runnable接口两种方式,但是大多数情况下,提倡用实现的方式。原因是这样做能避免单继承的局限性,求各位大侠能给我举个例子吗?这个局限性在哪呢?实现Runnable接口就能解决呢

3 个回复

倒序浏览
假如student是person的一个子类
问题是你想用多线程来运行student对象,这时候你想用实现多线程的第一种方式,继承Thread类方法,可是student已经继承了person(java不支持多继承),所以它就不能继承Thread了。这就是第一种方式的局限性,不能是任何类的子类(除了Object)。
回复 使用道具 举报
shaohuashang 发表于 2012-8-16 17:51
假如student是person的一个子类
问题是你想用多线程来运行student对象,这时候你想用实现多线程的第一种方 ...

。。。。。明白了。。。谢谢
回复 使用道具 举报
继承只能继承一个。但是接口可以有很多个。所以有了Thread和Runnable
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马