JVM(Java虚拟机)
JMM(内存模型)
栈(线程栈):线程在运行过程中产生的局部变量的存储区域,主要是存储栈帧信息,支持方法的调用、执行和退出。也是本地虚拟机栈。
本地方法栈:支持Native方法的调用、执行和退出。Native方法是针对于平台而言,所以可移植性很差。由Native关键字修饰的方法可以使用C语言进行重写。
程序计数器:用来记录当前字节码文件的执行行号。
栈帧 :简单来说,每一个在线程栈中的方法,都是一个栈帧。
局部变量表:存储的是定义好的变量的引用,即变量名称。
操作数栈:存储的是虚拟机定义的基础变量的值,最终将操作数栈中的值赋值给局部变量表中的引用。
方法出口:用来记录当前方法执行结束,退出后执行的位置。