天天看点

JVM内存构造与对象内存解析

Java编译完源程序以后,生成一个或多个字节码文件。

我们使用JVM中的类的加载器和解释器对生成的字节码文件进行解释运行。意味着,需要将字节码文件对应的类加载到内存中,涉及到内存解析。之前都不涉及到内存解析。

JVM内存构造与对象内存解析

*若想详细了解JVM推荐去看《JVM的开发规范》

虚拟机栈,即为平时所说的栈结构。我们将局部变量储存到栈结构中。

堆,我们将new出来的结构(比如:数组、对象)加载在堆空间中。补充:对象的属性(非static的)加载在堆空间中。

方法区:类的加载信息(比如整个类的结构涉及的代码、方法块)、常量池(一些常量)、静态域(静态变量,即static结构)