Ответ 1
После некоторых исследований наиболее распространенная реализация JVM (HotSpot), используемая для поддерживает предварительную выборку. Но этот был удален, поскольку для них нет практического использования. Спасибо @apangin за ссылку на отчет об ошибке.
Как упоминалось в @markspace, объекты переустанавливаются для облегчения доступа во время коллекций - это называется "уплотнением" и присутствует в GC по умолчанию, используемом HotSpot. Вам не нужно беспокоиться о таких базовых деталях, как VM обрабатывает это для вас.
Немного глубже в уплотнение..
Вероятно, вы слышали о "Stop-The-World" - это происходит, когда граф объекта находится в противоречивом состоянии. Объекты перемещаются, поэтому поток может обращаться к объекту, который больше не существует. Существуют некоторые реализации GC, которые считаются "безрезультатными", например