然后处理他可以处理的数据类型的数据
JVM将这块内存按照功能进行了更细的划分,不过终究是一个规范,虚拟机的厂商在实现的时候仍旧有很大的自由度
接下来将会从两个方面 虚拟机可以处理的数据类型.../堆/程序计数器/虚拟机栈/本地方法栈 五部分
接下来逐个进行介绍
ps:在抽象一点,逻辑上来说其实可以理解为堆/栈/程序计数器 三类
程序的运行 , 需要数据还需要方法,还需要说明从哪个指令位置开始执行...当一个线程调用另一个方法时,方法的局部变量保存在调用线程的Java虚拟机栈的栈帧中
只有一个线程总是能访问那些局部变量即调用方法的线程
栈帧
三部分组成: 局部变量表 操作数栈 以及栈帧数据区...,
此处,我们可以看做是当前线程所执行的字节码的行号指示器
也就是程序的运行完全依赖PC寄存器,需要依靠他获取下一条需要执行的字节码指令
JVM的多线程时通过线程轮流切换并分配处理器执行时间片的方式实现的...,在任何一个确定的时刻
一个处理器(一个内核) 都只能执行一条线程中的指令,为了线程切换后能恢复到正确的位置
所以每个线程都需要一个独立的程序计数器,所以程序计数器是线程私有的