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

Как определить объекты, подлежащие удалению сборщиком мусора

Объекты подлежат удалению GC, когда на них нет активных ссылок. Основные критерии:

  1. Нет ссылок - объект не достижим из корневых точек (стек, статические поля, JNI-ссылки)
  2. Циклические ссылки - группа объектов ссылается друг на друга, но недостижима извне

Пример:

java
class Node {
    Node next;
}

void method() {
    Node a = new Node();  // Создаем объект 1
    Node b = new Node();  // Создаем объект 2
    a.next = b;           // Связываем их
    b.next = a;           // Циклическая ссылка
    
    a = null;             // Объекты становятся недостижимыми
    b = null;             // и могут быть собраны GC
}

Для принудительного управления можно использовать:

  • System.gc() (не гарантирует сборку)
  • WeakReference/SoftReference для специальных случаев
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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