因为有 线程的重入功能,因此在同一个线程里面,可以获取到 相关的锁的资源,而不会 出现 线程死锁 例子:
public class TestSyn {
public static void main(String[] args) {
TestSyn ts = new TestSyn();
TestSyn.TestSync tsc = ts.new TestSync();
tsc.say();
}
public synchronized void say() {
System.out.println("aaa");
}
class TestSync extends TestSyn{
public synchronized void say() {
System.out.println("bbb");
super.say();
}
}
}