# Method Area
# 方法区包含什么
# 类信息
- 类型,class、interface、enum还是annotation
- 完整名称,父类的完整名称,包名.类名,
- 修饰符,public、abstract、final
- 直接接口的有序列表
# 运行时常量池
.class文件中的constant pool
# 静态变量
static变量
# 域信息
public,private,final等关键字
# 方法信息
- 方法的变量、返回值
- 方法的修饰符,public,sychronized等
- 异常处理表
# JIT代码缓存
执行引擎会通过字节码分析出哪些指令被经常调用,不由解释器执行,改为即时编译,将字节码指令直接翻译成机器指令,缓存在方法区中,供调用者直接执行
# 垃圾回收
方法区在虚拟机规范中提到,是需要回收的
← 初始化 方法区和栈、堆的关系 →