最近,我在採訪中被問及爲什麼使用wait
,notify
和notifyAll
。我解釋了他們。爲什麼等待,通知和notifyAll是Object類中的方法不像Cloneable
之後,他們讓我假設一個應用程序總是單線程的。它真的需要嗎?我的回答是否定的。
然後,他們問爲什麼設計像wait
,notify
和notifyAll
是Object
類的方法。爲什麼Java沒有接口,並且這些方法在該接口中,以及哪個類想要實現它可以使用它。所以,我有點卡住,無法思考這個設計。任何人都可以請播種嗎?
爲什麼當它們已經實施時實施它們? – user2717954
wait/notify/notifyAll已被重構爲[接口](https://docs.oracle.com/javase/8/docs/api/index.html?java/util/concurrent/locks/Condition.html) 。另請參閱[這篇文章](http://stackoverflow.com/questions/4912165/whats-the-best-alternative-to-wait-notify-for-low-level-synchronization) –
可能重複的[爲什麼是等待( )和notify()在Java的對象類聲明?](http://stackoverflow.com/questions/1769489/why-are-wait-and-notify-declared-in-javas-object-class) –