Синхронизированный блок в Java
Я наткнулся на код:
synchronized(Account.this)
{}
где Account
это класс.
Есть ли Account.this
имеется в виду какой-либо текущий экземпляр класса Account?
2 ответа
Решение
Обычно он используется внутри внутреннего класса: это означает, что this
экземпляр внешнего Account
учебный класс.
Пишу this
сам по себе вернет экземпляр внутреннего класса, а не внешнего класса.
Это, вероятно, будет из внутреннего класса учетной записи.
class Account {
class InnerAccount {
...
synchronized(Account.this) {
}
}
}