JVM 虚拟机栈
Posted natian-ws
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JVM 虚拟机栈相关的知识,希望对你有一定的参考价值。
虚拟机栈:
栈元素是栈帧。方法调用,栈帧入栈,反之出栈。
栈帧:一个方法的运行空间。
1、局部变量表:方法定义的局部变量、方法的参数存在该表。
实例方法中有个隐含参数“this”,所以实例方法可以访问该类的实例变量和其他实例方法。
局部变量表中变量的存放顺序:this(如果是实例方法)=>参数(如果有)=> 定义的局部变量(如果有)
slot是局部变量表中的空间单元,虚拟机规范规定:1、32位之内的数据,用一个slot来存放,如int、short、float等;2、64位的数据用连续两个slot来存放,如long、double;3、引用类型可32位亦可64位。
2、操作数栈:用来存放操作数。
局部变量表中的变量是不可直接使用的,如需使用必须通过相关指令将其加载至操作数栈中作为操作数使用。
以上是关于JVM 虚拟机栈的主要内容,如果未能解决你的问题,请参考以下文章