类的加载过程
1、加载
- 双亲委派模型(启动类=》扩展类=》应用类)
2、验证
- 文件格式验证(Class 文件格式检查)
- 元数据验证(字节码语义检查)
- 字节码验证(程序语义检查)
- 符号引用验证(类的正确性检查)
3、准备
准备阶段是正式为类变量分配内存并设置类变量初始值的阶段。
4、解析
解析阶段是虚拟机将常量池内的符号引用替换为直接引用的过程。
5、初始化
初始化阶段是执行初始化方法 <clinit> ()
方法的过程,是类加载的最后一步,这一步 JVM 才开始真正执行类中定义的 Java 程序代码(字节码)。
参考链接
类加载过程详解 | JavaGuide