Встречается на собеседованиях • сегодня

Можно ли применить ключевое слово synchronized для статического метода

Да, можно. Применение synchronized к статическому методу блокирует доступ к классу (через Class-объект), а не к экземпляру. Это означает, что только один поток может выполнять этот метод для всего класса, независимо от количества экземпляров.

Пример:

java
public class Counter {
    private static int count = 0;

    public static synchronized void increment() {
        count++;
    }
}

Здесь increment() синхронизирован на уровне класса (Counter.class). Если несколько потоков попытаются вызвать его одновременно, они будут выполняться последовательно.

Важно: синхронизация статических и нестатических методов использует разные мониторы, поэтому они не блокируют друг друга.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы