摘要:
1、堆介绍 一个JVM实例只需要一个堆内存,堆内存的大小是可以调节的。类加载器在读取类文件之后,需要把类、方法、常变量放在堆内存中,保存所有引用类型的真实信息,以Execution Engine执行。 堆逻辑上由“新生区+养老区+元空间”三部分组成,物理上由“新生区+养老区”两部分组成。 新生区是类 阅读全文
摘要:
HotSpot VM 目前使用最广泛的虚拟机 HotSpot使用指针的方式来访问对象 Java堆中会存放访问类的元数据(元数据:描述数据的数据,即模板)地址 reference直接存储对象的地址 阅读全文
摘要:
栈管运行,堆管存储 Java栈在线程创建时创建,它的生命周期跟随线程的生命周期,线程结束占内存也就释放 线程私有,不存在垃圾回收机制 8种基本类型的变量+对象的引用类型+实例方法都是在函数的栈内存中分配的 栈帧(方法压入栈之后叫栈帧)中主要存储3类数据: 本地变量:输入参数和输出参数以及方法内变量 阅读全文
摘要:
方法区绝不是放方法的地方,它存储一个类的结构信息 方法区是一种规范,在不同虚拟机中的实现不一样,最典型的就是永久代和元空间 Java 7中:方法区 f = new 永久代(); Java 8中:方法区 f = new 元空间(); 阅读全文