前面带大家深入的理解了一下什么是JVM,那么下面就要给大家介绍一下JVM类加载机制,那么究竟类的加载是什么呢?
一、什么是JVM类加载机制?
首先我们简单的来了解一下,JVM类加载机制。
虚拟机将描述类的数据从class文件加载到内存,并且,对数据进行校验、转换解析和初始化,最终,形成了能够被JVM直接使用的Java类型,那么这就是所谓的JVM类加载机制。
其实JVM类加载机制还是比较好理解的,下面再来深入的剖析一下JVM类加载机制。
二、类加载过程
看看下图
总的来说一共经历了四个阶段,这四个阶段分别是加载、连接、初始化、使用。
在这四个阶段当中,连接又涵盖了验证、准备、解析这3个步骤。
但是要注意了,Java语言本身支持运行时绑定,所以说,解析阶段也可以是在初始化之后进行的。
除此之外,还要注意,上面的这些顺序,说的都只是开始的顺序,但是,实际上来说的话,过程是交叉进行的,加载过程当中,很有可能验证就已经开始了。
三、类加载时机
JVM规定了类必须进行初始化的五种情况
可以从下图来了解一下
注意,在这五种情况当中,1当中的4条字节码指令在Java里最常见的场景为:
1、new一个对象时
2、 调用一个类的静态方法
3、 set或者get一个类的静态字段
JVM类加载机制大家都了解了吗?希望可以帮助到你。
想学习关于java架构师的相关内容,你可以继续的关注java架构师专栏进行了解哦。