我在采访中遇到了以下问题:
Thread
类的静态和本机方法是什么?
yield
start
join
- 醇>
wait
我了解多线程概念,例如:
Thread t = new Thread();
t.start(); // Thread starting execution
t.join(); // (or t.wait()) thread state will go to waiting
但是我没有回答帖子开头提到的面试问题。
答案 0 :(得分:3)
请参阅Java Thread doc。
http://docs.oracle.com/javase/7/docs/api/java/lang/Thread.html
currentThread()
sleep etc..
这样的方法本质上就是static
。
currentThread
isAlive
等方法很少native
。
参考this。
yield -> public static native void
start -> public synchronized void start
join -> public final synchronized void
wait -> In object class
答案 1 :(得分:0)
您可能希望查看java.lang.Thread
的Javadoc。它基本上告诉你:
yield()
是static
wait()
不是static
,而是继承自java.lang.Object
start
和join
不是static
,由java.lang.Thread
类定义。这些方法的native
很可能取决于VM实现,但它在某种程度上取决于native
实际上意味着什么。