Встречается на собеседованиях • сегодня
В чем разница между synchronized методом и synchronized блоком
synchronized метод синхронизируется на объекте, для которого вызывается (или на классе, если метод статический). synchronized блок позволяет явно указать объект для синхронизации и ограничить область блокировки.
Пример с методом:
java
public synchronized void increment() {
counter++;
}Пример с блоком:
java
public void increment() {
synchronized(this) {
counter++;
}
}Ключевые отличия:
- Блок более гибкий - можно синхронизироваться на любом объекте, не только на
this - Блок позволяет уменьшить область синхронизации (только критическую секцию)
- Для статических методов синхронизация происходит на уровне класса (
Classobject)

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы