Java虚拟机(JVM)元数据区存放的内容

类元数据

元数据区(在HotSpot虚拟机中也称为Metaspace)主要存放了类的元数据信息,如类的名称、访问修饰符、常量池、字段描述、方法描述等。

运行时常量池

运行时常量池是每个类或接口的常量池表的运行时表示形式,包含了若干种不同的常量,从编译期生成的字面量到方法和字段的引用,这些都会在类加载后进入元数据区的运行时常量池。

静态变量

类的静态变量也被存放在元数据区,因为它们是与类相关的,而不是与类的某个特定实例相关的。

JIT编译器编译后的代码

即时编译器(JIT)编译后的代码有时也会存放在元数据区或类似的本地内存区域中。

其他信息

此外,元数据区可能还包含了类的加载器信息、类的结构信息、数组信息等。

在Java 8之前,类的元数据信息是存放在永久代(PermGen)中的,但从Java 8开始,永久代被移除,取而代之的是元数据区(Metaspace)。Metaspace相对于永久代的好处在于,它使用本地内存,因此默认情况下不受Java堆大小的限制,能够更灵活地管理类的元数据信息。

相关推荐
子非鱼a12 小时前
【WEB】[SWPU2019]Web1
java·服务器·前端
花生了什么事o12 小时前
自定义Spring Boot Starter全流程
java·spring boot·后端
似水এ᭄往昔12 小时前
【Qt】--常用控件(显示类控件)
开发语言·qt
PHP实战开发录12 小时前
PHP文件上传成功为什么页面却找不到
开发语言·nginx·php·开发
疯狂打码的少年12 小时前
【数据库技术】复习日:关系代数 + SQL + 规范化(整理对比表)
jvm·数据库·笔记·sql
torpidcat13 小时前
ruoyi-vue-pro 若依芋道 java springboot +mybatis 生日查询相关
java·vue.js·spring boot
AC赳赳老秦13 小时前
文旅市场公开数据分析:基于 OpenClaw 采集景区客流与门票公示数据,生成区域文旅热度监测报告
java·c语言·python·php·symfony·deepseek·openclaw
云小逸13 小时前
C++ 第一阶段:对象、内存与生命周期
开发语言·c++
玖玥拾13 小时前
Lua 基础语法(二)
开发语言·unity·lua
王的宝库13 小时前
GO常用标准库包
开发语言·后端·golang