Java 对象锁和类锁

1,006 阅读1分钟

对象锁是用于对象实例方法,或者一个对象实例上的,类锁是用于类的静态 方法或者一个类的 class 对象上的。我们知道,类的对象实例可以有很多个,但 是每个类只有一个 class 对象,所以不同对象实例的对象锁是互不干扰的,但是 每个类只有一个类锁。 但是有一点必须注意的是,其实类锁只是一个概念上的东西,并不是真实存 在的,类锁其实锁的是每个类的对应的 class 对象。类锁和对象锁之间也是互不干扰的。

    // 为 类锁,单独存在class 文件上
    private static synchronized void synClass(){
      
     }
   // 对象 锁 指的是this
    private  synchronized void synClass(){
      
    }