JVM trainee
Циклические ссылки — соберутся?
Ответ
Да. Java GC работает по reachability, а не по reference counting. Два объекта, ссылающиеся друг на друга, но не достижимые снаружи — будут собраны. Это отличие от Python, где есть reference counting + cycle collector.
Разбор: JVM определяет живость объекта через достижимость от GC roots, а не через подсчёт ссылок, поэтому изолированный цикл без внешних ссылок недостижим и будет собран любым сборщиком. Главная ловушка — перенос модели reference counting (как в Python/CPython) на Java, где её нет.
Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.