Java 方法调用:栈帧与堆
跟随示例代码入栈、引用传参、修改字段、出栈;静态引用仍可保活。。
run入栈后,a保存new Box的引用值;change的参数b复制此值,所以修改b.value会改变同一个对象。操作数栈用于计算,局部变量表存引用;两个方法返回后栈帧移除,但Box.saved仍指向实例。本例展示逻辑分配,JIT可优化掉真实分配。
主要特点
- HotSpot教学逻辑图;区域不是精确物理地址。方法区是规范概念,元空间只存类元数据等;静态字段随Class镜像在堆中。JIT逃逸分析可能消除分配;本例按逻辑对象说明。解析可延迟,不强制发生在初始化前。
如何使用Java 方法调用:栈帧与堆
- 当前是就绪画面。开始演示会按当前参数执行一次操作;回放准备过程请从头播放。
- 每次操作独立一轮。从头播放重播本轮,当前继续从所选步骤接着播;步骤菜单与时间轴可定位,历史菜单可回看上一轮。
- 方向键 ← → 可单步,空格键播放或暂停。
数据与隐私
所有计算都在你的浏览器里完成,不连接任何数据库,也不会把你输入的内容上传到任何地方。
相关工具
- 计算机原理可视化 - 原「数据结构可视化」。36个可交互场景:数据结构、Java集合与JVM/GC/线程池、MySQL索引/MVCC/执行恢复、TCP/UDP、分布式事务;逐步字幕、慢速播放和面试讲解。