黑马程序员技术交流社区

标题: Runnable和Thread [打印本页]

作者: 朱伯斌    时间: 2012-7-1 15:35
标题: Runnable和Thread
为什么Runnable要实现run方法,而Thread不需要的呢,只需写start方法就行了?
作者: 韦念欣    时间: 2012-7-1 19:35
实现Runnable要覆盖run方法,而继承Thread也是需要覆盖run方法的。
只不过,在启动线程的时候,这两种方法都是使用start方法启动的,不能用run方法启动。
作者: 金龙    时间: 2012-7-1 20:10
我觉得最本质的你好像没有搞懂,首先   线程的建立可以有两种方式:1,继承Thread类,并复写run方法,然后建立子类对象,start就启用线程了。    2,实现Runnable接口,实现其中的run方法,然后建立一个Thread类的对象,并把实现Runnable接口的对象作为参数传入其中。   这两种方法,都需要复写run的。而第二种方法,真正是线程的是Thread类的对象,但是由于它的参数是实现Runnable接口的对象,所以它运行的方法是这个对象的run。

还有,一般建议用第二种方法,因为避免了单继承的局限性。




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