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