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

В чем разница между методами wait у Object и sleep у Thread

wait() и sleep() используются для паузы выполнения, но имеют ключевые отличия:

  1. Синхронизация
    wait() требует монитор объекта (вызывается внутри synchronized блока), sleep() — нет.
  1. Пробуждение
    wait() освобождает монитор и ждёт notify()/notifyAll(). sleep() просто приостанавливает поток на указанное время.

  2. Статический vs. инстанс
    sleep() — статический метод Thread, wait() — метод Object.

Пример:

java
synchronized (lock) {
    lock.wait(); // Освобождает lock и ждёт notify()
}

Thread.sleep(1000); // Просто ждёт 1 секунду
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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