JVM|JVM真香系列:方法区、堆、栈之间到底有什么关系
文章插图
栈指向堆如果在栈帧中有一个变量,类型为引用类型,比如:
文章插图
这时候就是典型的栈中元素obj指向堆中的Object对象,result的指向和obj的指向为同一个对象。
文章插图
【 JVM|JVM真香系列:方法区、堆、栈之间到底有什么关系】
使用命令
javac -g:vars JvmCodeDemo.java
进行编译,然后再使用
javap -v JvmCodeDemo.class >log.txt
然后打开log.txt文件
文章插图
如果还有疑惑,可以再结合上面的字节码图和关系图来看,这样理解就更轻松些。
方法区指向堆方法区中会存放静态变量,常量等数据。
如果是下面这种情况,就是典型的方法区中元素指向堆中的对象。
文章插图
堆指向方法区方法区中会包含类的信息,对象保存在堆中,创建一个对象的前提是有对应的类信息,这个类信息就在方法区中。
文章插图
Java对象内存布局
文章插图
一个Java对象在内存中包括3个部分:对象头、实例数据和对齐填充
文章插图
- 显卡|田言梦语:你会买RTX 40系列“空气”显卡吗?
- oppo reno|到OPPO线下体验了一番,终于知道Reno7系列为什么卖得这么好了
- oppo reno|15分钟破亿!OPPO Reno7系列首销火爆,至高补贴1300元
- realme|买不起“十三香”?目前这4款真香机最值得买,三五年不卡顿
- OPPO|2021骁龙技术峰会上OPPO高管爆猛料 Find X系列新品明年一季度见
- 荣耀|荣耀60系列新机发布:2699元起,颜值手感天花板!你们买么?
- nova9|刚刚Hi nova 9 系列正式发布,价格亮了!
- OPPO|OPPO的“真香”机:12+256GB降至2099元,K9Pro可以的
- 麒麟9000|麒麟9000系列芯片数量成迷,mate50仍有望搭载麒麟9000芯片
- 车联网|加量不加价,荣耀60系列发布,俩版本差价1000元该选谁?