JVM trainee

Где хранятся статические поля?

Ответ

В Metaspace. До Java 8 это была область PermGen (часть heap), с Java 8 — отдельная область в нативной памяти (off-heap). Это важно: при анализе утечек статические поля не видны в обычном дампе heap.

Разбор: Статические поля находятся в Metaspace — нативной off-heap области, заменившей PermGen в Java 8 (до этого PermGen был частью heap). На стеке хранятся только локальные данные, не статика. Ловушка: статика НЕ лежит в обычной куче и потому не видна в стандартном heap-дампе, а Code Cache предназначен для нативного кода JIT, а не для полей.

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

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