Untitled

程序计数器

程序计数器也叫 PC 寄存器,每个线程会通过程序计数器记录当前要执行的字节码指令的地址

Untitled

在代码执行的过程中,程序计数器会记录下一行字节码指令的地址。执行完当前指令后,虚拟机的执行引擎根据程序计数器执行下一行指令

栈分为两部分,分别是 Java 虚拟机栈和本地方法栈

Java 虚拟机栈采用栈的数据结构来管理方法调用中的基本数据,先进后出。每一个方法调用都使用一个栈帧来保存

在 IDEA Debug 的界面可以看到栈帧。

栈帧的构成

Untitled

局部变量表

在方法执行的过程中存放所有的局部变量

Untitled

Untitled

<aside> 💡 局部变量表中还额外存放了 this 和 方法参数

</aside>