и нет добытчиков для этого.
оложим, у вас есть ссылкиA -> B -> C -> D
, Когда вы удаляете ссылку наB
изA
Вы остались с осиротевшей цепочкой объектовB -> C -> D
.
БудетC
а такжеD
быть мусором, даже если нет возможности добраться до них (поскольку нет ссылки наB
)?
Я полагаю, что GC умен в этом и разрешит любые такие зависимости.
Тем не менее, я посмотрел висходный код дляLinkedList
класс и нашел что-то противоречащее этому убеждению. Я заметил, что когда списокclear()
ed, все ссылки на каждую ссылку явно установлены наnull
таким образом, делая этоO(n)
операция. Есть ли какая-либо причина / польза для этого?