虚拟机栈
1、此区域是线程私有的,生命周期与线程相同。每个方式执行会创建一个栈桢,一个栈桢又包括局部变量表、操作数栈、动态链接、方法返回地址和一些附加信息,其中动态链接、方法返回地址和一些附加信息合起来又叫做桢数据区;
2、 局部变量表:
①编译期可知的各种基本数据结构、对象引用、返回地址,存储一个局部变量和方法参数。
② 基本单位变量槽(varriable Slot): 0位索引的Slot默认是用于传递方法所属对象实例的引用;一个Slot可以存放boolean、byte、char、int、float、reference、returnAddress 8中类型,其中long和double针对32位和64位系统不一样,64位一个long或double都是占两个槽。
3、 操作数栈:在数字之间做运算时,将数字取出放入到操作数栈中,进行相应的计算,并将计算结果返回到局部变量表中;
4、 动态链接:指向运行时常量池中该栈帧所属方法的引用;
5、方法返回值地址: