关于java:Thread over Runnable的优势

Advantage of Thread over Runnable

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
Java: “implements Runnable” vs. “extends Thread”

1)为什么Java语言既提供线程又可运行?2)线程可运行的优点是什么(为什么Java不能提供可运行的)3)我们能不能睡个好觉,给它一个ID等?


1。线程是一个类,当你说.start()时,你创建一个thread of execution附加到线程类的一个实例。调用runnable的docx1〔2〕方法,使其对thread of execution执行任务,start()方法返回很快。

2。Runnable是分配给newly created thread of executiontask

三。因此,如果没有线程类,就无法运行可运行的。


1)线程是一个类,包含功能——而runnable是一个接口,因此只是实现类要遵守的"契约"。因为runnable只是一个接口,所以您需要实例化一个线程来包含它。而线程已经包含了生成线程的能力。

2)实现RunnLabess是建议的方式,因为如果扩展线程,则不能扩展任何其他内容(Java不支持多重继承)。一个类上可以有多个接口,因此可以有runnable+许多其他接口,还可以扩展另一个基类。

3)从runnable的实例化中获取线程并使其休眠-this.sleep()。