#java #jvm #рефлексия
Вопрос в следующем, хранит ли JVM информацию о классе (например Field[], Method[], etc.) в памяти, после загрузки класса класслоадером и можно ли держать ссылки на эту информацию?
Ответы
Ответ 1
Это зависит от того, какую JVM вы используете. Например, у Hotspot JVM в свежих версиях (8+) эта информация хранится в MetaSpace, который является частью native heap. Держать ссылки на эту информацию можно, если она вам нужна. Если она не нужна, по идее лучше не держать, чтобы можно было выгрузить класс.Ответ 2
Если я правильно понимаю вопрос, то да, jvm хранит мета-информацию о полях и методах классов в хипе. Для Java до 7 версии в PermGen, для Java 8+ в MetaSpace.
Комментариев нет:
Отправить комментарий