黑马程序员技术交流社区

标题: 多线程一些小问题 [打印本页]

作者: 郑元皓    时间: 2013-5-20 17:20
标题: 多线程一些小问题
使用多线程如果继承了Thread类以后是不是一定要覆盖run方法?还有线程中实现Runnable接口覆盖中的run方法和Thread有什么区别?还有就是多线程为什么一般都实现Runnable?是不是只是因为单继承的局限性问题?谁能和我概括性的简单讲解下。。不要大量复杂的信息复制给我看哦。很乱的。。谢谢
作者: 殇_心。    时间: 2013-5-20 18:26
本帖最后由 殇_心。 于 2013-5-20 18:28 编辑

1.一般是需要覆盖。因为你的定义的线程有你自己运行的方式,所以你懂的
2.基本没什么区别。继承Thread后不能继承其它类。实现Runnable还可以继承其它类
实现Runnable的话  必须复写run方法,而继承Thread的话可以不用复写(这样没含义)
3.是因为单继承的局限性
作者: 黑马-许鹏    时间: 2013-5-20 18:35
继承了Thread类后可以不覆盖(编译不会报错),但是你设定的线程都要实现你自己定义的功能,而run方法是线程的入口,所以一般都要覆盖run()方法。实现Runnable接口不但是为了解决单继承的局限性,而且会使程序看上去更加整洁和独立。





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