首页 > 代码库 > 虚拟机运行时数据区划分

虚拟机运行时数据区划分

技术分享

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

技术分享

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

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

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

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

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

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

 

虚拟机运行时数据区划分