调用wait ()/notify ()/notifyAll ()中的任何一个方法时,如果当前线程没有获得该对象的锁,那么就会抛出IllegalMonitorStateException 的异常(也就是说程序在没有执行对象的任何同步块或者同步方法时,仍然尝试调用wait ()/notify ()/notifyAll ()时)。由于该异常是RuntimeExcpetion 的子类,所以该异常不一定要捕获。作为RuntimeException,此类异常不会在wait (),notify (),notifyAll ()的方法签名提及。 |