
JVM
youngyang的博客
一只快乐的后端开发程序猿,Java爱好者,欢迎大家多多指教,互相学习!!
展开
-
一文读懂Java中类的卸载机制
先下结论:使用JVM自带的类加载器(根加载器、扩展类加载器、系统类加载器)加载的类永远不会被卸载,使用自己创建的类加载器才会可能被卸载。至于为什么接下来就来一起研究吧。类的生命周期当一个类被加载、连接和初始化后,它的生命周期就开始了。当代表某个类的Class对象不再被引用,即不可达时,Class对象就会结束生命周期,该类在方法区内的数据也会被卸载,从而结束该类的生命周期。由此可见,一个类何时结束生命周期,取决于代表它的Class对象何时结束生命周期。Class对象的引用关系那么Class对象什原创 2020-07-21 16:03:29 · 1525 阅读 · 1 评论 -
Java虚拟机中类加载的过程
本篇博客主要讲解Java虚拟机加载类的过程。当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,链接,初始化三步来实现这个类进行初始化。其中链接有包括三步:验证、准备和解析。加载简单来说,加载指的是把class字节码文件从各个来源通过类加载器装载入内存中,并且根据字节流创建java.lang.Class对象的过程。这个过程,将类的.class文件中的二进制数据读入内存,放...原创 2020-04-09 23:21:37 · 344 阅读 · 0 评论 -
JVM的7种垃圾回收器
垃圾回收算法和垃圾回收器对于JVM的垃圾回收算法有复制算法、标记清除、标记整理。这些算法只是天上飞的理念,是一种方法论,但是真正的垃圾回收还需要有落地实现,所以垃圾回收器应运而生。JVM回收的区域包括方法区和堆,jvm对于不同区域不同的特点采用分代收集算法,比如因为所有的对象都是在Eden区进行分配,并且大部分对象的存活时间都不长,都是“朝生夕死”的,每次新生代存活的对象都不多,所以新采取复...原创 2020-03-29 20:02:29 · 2817 阅读 · 0 评论 -
Java的四种引用:强引用、软引用、弱引用、虚引用
整体引用架构Java中包括四种引用,分别是强引用、软引用、弱引用、虚引用。这些引用关系也对对象的生命周期有着重要的联系。四种引用的架构图如下所示:四种引用的区别和各自特点:Reference就是强引用,SoftReference是弱引用,WeakReference是弱引用,PhantomReference是虚引用。强引用对于普通的Object object = new Objec...原创 2020-03-28 22:26:47 · 333 阅读 · 0 评论