为什么下面的代码不会导致死锁?我的意思是在我调用 getNumber(.) 之后,Test 类的对象应该被锁定,所以我不应该能够访问 getNumber2(.)。
class Test() {
synchronized int getNumber(int i){
return getNumber2(i);
}
synchronized int getNumber2(int i) {
return i;
}
public static void main(String[] args) {
System.out.println((new Test()).getNumber(100));
}
}
输出:
100