在Java中的常规对象上调用notify

考虑以下代码片段:

Object stateChanged = new Object();
if(state == GLGameState.Finished) {
 //Don't mind those two methods
 screen.pause();
 screen.dispose();
 synchronized(stateChanged) {
 this.state = GLGameState.Idle;
 stateChanged.notifyAll();
     }
 } 

我有点困惑,因为我之前从未见过对任何对象调用notifyAll / wait。这是如何运作的?在此之前,我还没有看到什么可以等待。这是《 Beginning Android Games》一书的摘录。我不确定此代码片段是否足够,但如果不足够,请告诉我。 TLDR在对象上调用notifyall,notify和wait后如何工作?我看过的所有教程都只对自己调用wait()或notify()。先感谢您!编辑:请注意,到目前为止,尚未在stateChanged上调用wait(),这也使我有些困惑。