【发布时间】:2012-08-14 18:55:13
【问题描述】:
1) 为什么Java语言同时提供Thread和Runnable? 2)线程优于可运行的优点是什么(为什么Java不能只提供可运行的) 3)我们可以做一个可运行的睡眠,给它一个id等吗?
【问题讨论】:
-
这看起来很像家庭作业,在互联网上已经被回答了大约 10 万次。
-
@Darin:您提到的帖子中的所有答案都说明了为什么应该使用 runnable 以及它提供的优势。我的问题是为什么Java有Thread,Thread类比Runnable接口有什么优势?
-
没有 Thread 类就不能启动线程。即使你有一个实现 Runnable 的类,你仍然需要实例化一个线程,或者使用 ExecutorService 来创建你的线程。
-
@Brian:这不是家庭作业,我没有找到可以对我的问题给出满意解释的答案。
-
@user892871 - 试试 Oracle 教程。 docs.oracle.com/javase/tutorial/essential/concurrency/…底部的段落简洁地解释了它。这真的归结为 Java 没有多重继承,因此除了在最简单的情况下您希望使用接口来获得灵活性。
标签: java multithreading