@FreeD1

Как работает оператор new с памятью в Java?

Ку гайз.

Назрел тут такой вопрос по поводу того как вообще оператор new взаимодействует с памятью , как вычисляет нужный объем памяти и где она хранится ? И хранит ли переменная созданная при помощи new ссылку на ячейку в памяти где зарезирвирован сам объект класса ? И есть ли какие-нибудь подводные камни у этого оператора ?

Буду благодарен за развернутый ответ.
  • Вопрос задан
  • 581 просмотр
Решения вопроса 1
mayton2019
@mayton2019 Куратор тега Java
Bigdata Engineer
Выделяется память в eden space по принципу стека. Поэтому сама аллокация происходит быстро. Когда eden переполняется - запускается процедура уборки и уплотнения GC. Физические адреса объектов при этом могут изменятся. После нескольких фаз уборки выжившие объекты перемещаются в PermGen/Metaspace как постоянные. Так примерно работает lifecycle для классического gc. В новых - не знаю. Могут быть нюансы.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы