1、在JVM中,每个对象和类在逻辑上都是和一个监视器相关联的。
2、对于对象来说,相关联的监视器保护对象的实例变量(不监视代码)。
3、对于类来说,和类相关联的监视器保护类的类变量(不监视代码)。
4、如果一个对象没有实例变量,或者一个类没有类变量,则和对象相关联的监视器,或者和类相关联的监视器就什么都不监视。
5、监视器是被某个对象或类所拥有的,而线程可以“获取对象的锁”(也就是获取了对象的监视器),而一旦某个线程“获取对象的锁”后,那么在这个线程释放锁前,则其他线程绝不可以再获取这个对象的锁了。
6、所谓“锁住一个对象”就是某个线程获得了这个对象的锁(这个对象的监视器)