This commit is contained in:
Dragon
2021-04-03 15:35:33 +08:00
parent bf0d1bcccd
commit 3c12ef4585
4 changed files with 695 additions and 3 deletions

View File

@@ -363,7 +363,7 @@ Java代码的行号和字节码指令行号的对应关系
1. 参数值的存放总是从局部变量数组索引 0 的位置开始,到数组长度-1的索引结束。
2. 局部变量表,**最基本的存储单元是Slot变量槽**局部变量表中存放编译期可知的各种基本数据类型8种引用类型referencereturnAddress类型的变量。
3. 在局部变量表里,**32位以内的类型只占用一个slot**包括returnAddress类型**64位的类型占用两个slot**1ong和double
- byte、short、char在储存前转换为intboolean也被转换为int0表示false非0表示true
- byte、short、char在储存前转换为intboolean也被转换为int0表示false非0表示true
- long和double则占据两个slot
4. JVM会为局部变量表中的每一个Slot都分配一个访问索引通过这个索引即可成功访问到局部变量表中指定的局部变量值
5. 当一个实例方法被调用的时候,它的方法参数和方法体内部定义的局部变量将会**按照顺序被复制**到局部变量表中的每一个slot上