黑马程序员技术交流社区
标题:
怎么实现多线程??
[打印本页]
作者:
刘永贵
时间:
2013-8-6 14:37
标题:
怎么实现多线程??
本帖最后由 刘永贵 于 2013-8-6 21:22 编辑
怎么实现多线程??
作者:
龚首道
时间:
2013-8-6 14:44
在Java当中实现多线程通常有两种方法。
第一,创建一个类,继承Thread类,并复写run方法。需要启动一个新的线程时,首先创建该类的对象,然后调用start()方法,就可以使新线程进入就绪状态;
第二,创建一个类,实现Runnable接口,并实现该接口当中的run方法。需要启动一个新的线程时,首先创建一个该类的对象,调用Thread类的构造函数,将该对象作为构造函数的参数传递进去,然后再调用Thread对象的start()方法,就可以使新线程进入就绪状态。
作者:
masterV
时间:
2013-8-6 14:46
实现多线程有两种方式,一种是让一个类继承Thread类,另一种是让一个类实现Runnable接口。由于java语言单继承机制的限制,当一个类继承了另一个类的时候,就没有办法再继承Thread 类了,而java是支持多实现的,所以,后者应用的比较多。
开启一个线程的唯一方法是调用线程的start()方法.
作者:
龚首道
时间:
2013-8-6 14:47
本帖最后由 龚首道 于 2013-8-6 14:48 编辑
两者的区别:
从本质上讲,Runnable是JAVA语言中用以实现线程的接口,任何实现线程功能的类都必须实现这个接口。
Thread类就是因为实现了Runnable接口,所以继承它的类才具有了相应的线程功能,但是由于在java语言中,只能继承一个类,如果用户定义的类已经继承了其他类,就无法再继承Thread类,也就无法使用线程,于是java语言为用户提供了一个接口.
java.lang.Runnable,实现Runnable这个接口与继承Thread类具有相同的效果,通过实现这个接口就可以使用线程。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2