我从Oracle的Java教程中学习了并发性,并在本地机器中尝试了以下两个示例 -
public class HelloRunnable implements Runnable {
public void run() {
System.out.println("Hello from a thread!");
}
public static void main(String args[]) {
(new Thread(new HelloRunnable())).start();
}
}
和
public class HelloThread extends Thread {
public void run() {
System.out.println("Hello from a thread!");
}
public static void main(String args[]) {
(new HelloThread()).start();
}
}
这些例子很有效。现在,请原谅我这个问题看起来很奇怪,因为我是Java编程的新手,但为什么不是Runnable
接口,在第一个例子中,而Thread
类在这两个例子中都是导入的?
提前致谢!
答案 0 :(得分:1)
正如其他人所说,java.lang包中的类和接口不需要导入。它们默认导入。
您可以查看本网站的一些示例。没有导入任何java.lang类:
但是请注意,必须导入子包中的类/接口(检查该页面上的反射示例)。
答案 1 :(得分:0)
Runnable和Thread属于java.lang包。此包中的接口和类是隐式的。它们不需要进口。