2.1.6synchronized锁重入
关键字synchronized拥有锁重入功能,也就是在使用synchronized时,当一个线程得到一个对象锁后,再次请求此对象锁时是可以再次得到该对线的锁的。这也证明在一个synchronized方法/块的内部调用本类的其他synchronized方法/块时,是永远可以得到锁的。
“可重入锁”的概念是:自己可以再次获取自己的内部锁。
同时也支持在父子类继承的环境中。
2.1.7出现异常,锁自动释放
当一个线程执行的代码出现异常时,其所持有的锁会自动释放。
2.1.8同步不具有继承性
同步不可用继承。
如果想实现子类的同步,需要在子类中也加上synchronized关键字。
2.2synchronized同步语句块
synchronized方法是对当前对象进行加锁,而synchronized代码块时对某一个对象进行加锁。