JVM trainee

Из чего состоит память Java?

Ответ

Основные области: Heap (куча) — здесь живут все объекты, включая их поля. Stack (стек) — у каждого потока свой, хранит локальные переменные и фреймы вызовов. Metaspace (с Java 8 заменил PermGen) — метаданные классов и статические поля, лежит в нативной памяти вне кучи. Young/Old — это поколения внутри Heap.

Разбор: JVM-память разделена на Heap (все объекты, включая поля), Stack (по одному на поток — локальные переменные и фреймы) и Metaspace (метаданные классов, вне кучи, в нативной памяти). Ловушка: примитивные поля объектов лежат в куче внутри объекта, а не в стеке; PermGen убран в Java 8 и заменён Metaspace; Young/Old — это поколения внутри Heap, а не стека.

Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.

Заказать гайд Пройти тест
новые гайды и свежие вопросы с собесов — первыми в Telegram Смотреть гайды Подписаться