我的问题几乎等同于What is a class level lock in java
但这是一个后续问题。
实例级别锁定通过锁定实例/对象的关联监视器来工作,但是在类级锁定的情况下谁扮演监视器的角色?隐式锁定如何工作?
感谢你
答案 0 :(得分:2)
在Java中,要在面向对象的上下文中获取类表示,已创建Class
类。
因此,当您获得类级锁定时,在静态上下文中,您将获得该“类名”的Class
对象实例的关联监视器。
public class com.buck.Foo {
}
例如,会对类型等效于
的东西进行“类级别锁定”Class<com.buck.Foo> clazz = Foo.class;
措辞可能很奇怪,但要密切注意大写。
class is a keyword
Class is a type that represents a "class instance"
Foo.class is a convention to refer to an instance which has the type "Class<Foo>"
clazz is a variable which can accept the instance of type "Class<Foo>"