jvm 的局部变量表
局部变量表是一组变量值存储空间,用于存放方法参数和方法内部定义的局部变量。
Java中方法的局部变量是放在虚拟机栈的局部变量表里面,形参也算一个。本地变量表,就是局部变量表,只是翻译不同。代码说明
运行时栈帧中存储了以下内容
- 局部变量
- 操作数栈
- 动态链接
- 返回地址
- 附加信息
每一个方法的调用开始和结束都是栈的压入(入栈)和弹出(出栈)的过程
1 | public static void main(String[] args) { |
反编译得到:
1 | public static void main(java.lang.String[]); |
结果:locals=3
也就是说局部变量表长度是3。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 人话翻译机!
评论