程序计数器,Java虚拟机栈,本地方法栈,堆,方法区,直接内存
程序计数器,Java虚拟机栈,本地方法栈是线程私有的,堆,方法区,直接内存是线程共享的。
程序计数器:为了线程切换后能恢复到正确的执行位置,是唯一一个不会出现OutOfMemoryError的内存区域,生命周期随着线程的创建而创建,随着线程的结束而死亡。
Java虚拟机栈:是Java方法执行的内存模型,每次方法调用的数据都是通过栈传递的。
本地方法栈:和虚拟机栈发挥作用相似,,虚拟机栈为执行Java方法服务,而本地方法栈则为虚拟机使用到的Native方法服务
方法区:用于存储已被虚拟机加载的数据
直接内存:避免了在Java堆和Native堆之间来回赋值数据