class A {
public synchronized void myOneMethod() {
// ...
}
}
class B extends A {
public synchronized void myOtherMethod() {
// ...
}
}
// ...
B myObject;
// ...
myObject.myOneMethod(); // acquires lock
myObject.myOtherMethod(); // same lock?
Насколько я понимаю модель синхронизации, я бы сказал, что да, это так, потому что блокировка/монитор связана с экземпляром myObject, и не имеет значения, где был определен метод. Но правильно? Если нет, то почему? Если да, то почему ты уверен, а я нет?: -)