首页 > 其他 > 详细

jvm:内存结构与对象内存解析

时间:2020-07-09 23:47:55      阅读:87      评论:0      收藏:0      [点我收藏+]

java的跨平台性主要是因为其字节码文件可以在任何具有java虚拟机的计算机或者电子设备上运行,jvm中的字节码解析器负责将字节码文件解释成机器码运行,字节码文件.class是java源程序通过编译器产生的。

jvm是jre的一部分,它是一个虚构出来的计算机,是通过在实际的计算机上模仿功能实现出来的,jvm有自己完善的硬件架构,如处理器,堆,栈,寄存器,还有相应的指令系统,所以安装jdk(开发工具包)的时候也就安装了jvm,jdk包含着jre。

jvm主要由三部分组成:1、类装载器子系统(ClassLoader)  2、运行时数据区   3、执行引擎

它的内存结构图如下:

技术分享图片

 

运行时的数据区包括:方法区、虚拟机栈、本地方法栈、堆、程序计数器

技术分享图片

 

1、堆:存放的是对象的实例,所有的对象的实例以及数组都是在堆上分配内存

2、栈:虚拟机栈,存放局部变量,如八种基本数据类型、对象的引用

3、方法区:用于存储被虚拟机加载的类信息、常量、静态变量,即编译器编译后的代码等

 

jvm:内存结构与对象内存解析

原文:https://www.cnblogs.com/qml0725/p/13276700.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!