一、堆

存储对象

二、栈

存储方法内的参数值,局部变量

三、方法区

存储

1、每个类的信息(包括类的名称、方法信息、字段信息)

2、静态变量

3、常量以及编译器编译后的代码等。

虽然JVM规范把方法区描述为堆的一个逻辑部分, 但它却有个别名non-heap(非堆)。

元空间(永久代)方法区的实现

四、本地方法栈

为JVM使用到的native方法服务的

五、总结

类:基本信息、静态变量、常量存储在方法区中

对象:存储在堆中

方法:存储在栈中

04-04 12:21