JVM
wyplj_sir
只是总结。
展开
-
JVM——垃圾回收
前面介绍了Java运行时内存的各个区域。对于程序计数器、虚拟机栈、本地方法栈这三个部分而言,其生命周期与相关线程有关,随线程而生,随线程而灭。并且这三个区域的内存分配与回收具有确定性,因为当方法结束或者线程结束时,内存就自然跟着线程回收了。因此,JVM内存分配和回收关注的是Java堆与方法区这两个区域。个人感觉:方法区中涉及的是类的卸载,而Java堆中是对象的回收。所以JVM内存分配...原创 2020-05-03 17:06:05 · 217 阅读 · 0 评论 -
JVM——类的加载过程
文章目录类的生命周期类加载过程加载类加载器双亲委派模型双亲委派模型的好处自定义类加载器验证准备解析初始化初始化时机不会导致类的初始化卸载类的生命周期一个类的完整生命周期如下:加载、验证、准备、初始化和卸载这5个阶段的顺序是确定的,类的加载过程必须按照这种顺序进行,而解析阶段则不一定,可能在初始化阶段后在开始,因为java支持运行时绑定。类加载过程Class 文件需要加载到虚拟机中之...原创 2020-05-01 19:33:11 · 251 阅读 · 0 评论 -
JVM——Java运行时数据区域
文章目录运行时数据区域1.程序计数器2.Java虚拟机栈扩展:那么方法/函数如何调用?3.本地方法栈4.堆5.方法区方法区和永久代的关系方法区大小为什么要将永久代 (PermGen) 替换为元空间 (MetaSpace) 呢?6.运行时常量池7.直接内存运行时数据区域Java 虚拟机在执行 Java 程序的过程中会把它管理的内存划分成若干个不同的数据区域。JDK1.8和之前的版本略有不同,下...转载 2020-05-01 13:22:43 · 168 阅读 · 0 评论