目录
本文详细介绍了JVM内存模型的各个组成部分,包括程序计数器、Java虚拟机栈、本地方法栈、堆、方法区还有各区域的作用、特点以及异常情况,如StackOverFlowError和OutOfMemoryError。还提到了动态链接、虚方法表、对象分配过程、垃圾回收以及逃逸分析等关键概念。
JDK1.8同JDK1.7,最大的差别就是元数据区取代了永久代。元空间的本质和永久代类似,都是对JVM规范中方法区的实现,不过元空间与永久代之间最大的区别在于元数据空间并不在虚拟机中,而是使用本地内存。
程序计数器(PC 寄存器)
程序计数器的定义
程序计数器是一块较小的内存空间,是当前线程正在执行的那条字节码指令的地址。若当前线程正在执行的是一个本地方