虚拟机运行时数据区划分

Posted 蒋旺93

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了虚拟机运行时数据区划分相关的知识,希望对你有一定的参考价值。

假设①新建Company类,然后继续②创建Company实例,即Company company = new Company();

下面解释①②两部动作所涉及到的虚拟机运行时内存区域划分:

1,方法区:存放类信息,常量,静态变量(①中新建类(类信息)存放在方法去中);

2,虚拟机栈:创建栈帧,存放局部变量信息表,方法出口等信息(②中Company company即创建了一个reference,则昂在了局部变量信息表中);

3,堆:存放对象实例,(②中new Company()所需内存空间则在堆提供)。

4,程序计数器:生命周期与线程生命周期相同,简单来说,则用于标记线程执行的位置。

5,本地方法栈:与虚拟机栈类似,只不过本地方法栈服务的是Native方法(本地方法)。

 

以上是关于虚拟机运行时数据区划分的主要内容,如果未能解决你的问题,请参考以下文章

Java虚拟机运行时数据区

Java虚拟机运行时数据区域划分

带你了解什么是Java虚拟机运行时数据区

Java虚拟机2:Java 运行时数据区

Java虚拟机运行时数据区

JVM学习2.Java虚拟机运行时数据区