根据获取的锁的分类:获取对象锁和获取类锁
获取对象锁的两种用法
1、同步代码块(synchronized(this),synchronized(类实例对象)),锁是小括号()中的实例对象。
2、同步非静态方法(synchronized method),锁是当前对象的实例对象。
获取类锁的两种用法
1、同步代码块(synchronized(类.class),锁是小括号()中的类对象(Class对象)。
2、同步静态方法(synchronized static method),锁是当前对象的类对象(Class对象)。