Сборка мусора
Как только определено множество недостижимых объектов, сборщик мусора может освободить память, занимаемую ими, и оставить остальное как есть. Также можно после освобождения памяти переместить все или часть оставшихся объектов в другие области памяти, обновив вместе с этим все ссылки на них. Эти два варианта реализации называются, соответственно, "неперемещающим" и "перемещающим".
Collection
codice_18 – особый вид "codice_13" не препятствующий сборщику мусора удалять свои элементы. То же самое – "codice_20" для codice_1.(Если какой-то объект присутствует только в codice_22 – он удаляется из памяти.)