final修饰的对象必须被初始化,不能被修改。非final的对象可以被重新赋值,锁对象就不受管控了。当一个锁被其他对象占有时,当前线程可以对锁对象重新赋值(相当于从新创建了一个锁对象),从而也拿到了运行的权利。
final修饰的对象必须被初始化,不能被修改。非final的对象可以被重新赋值,锁对象就不受管控了。当一个锁被其他对象占有时,当前线程可以对锁对象重新赋值(相当于从新创建了一个锁对象),从而也拿到了运行的权利。
转载于:https://my.oschina.net/zhzx/blog/3058123