类加载器深入解析与阶段分解

类加载

  • 在Java代码中,类型的加载、链接与初始化都是在程序运行期间完成的
  • 提供了更大的灵活性,增加了更多的可能性

加载:例如从磁盘把class文件加载到jvm

链接:确定类与类之间的关系,字节码的安全校验等

初始化:为静态变量赋值

类加载器深入剖析

  • Java虚拟机与生命周期
  • 在如下情况下,Java虚拟机将结束生命周期
    • 执行了 System.exit() 方法
    • 程序正常执行结束
    • 程序在运行过程中遇到了异常或者错误而异常终止
    • 由于操作系统出现了错误导致Java虚拟机进程退出

类的加载、链接与初始化

  • 加载:查找并加载类的二进制数据

  • 链接

    • 验证:确保被记载类的正确性

    • 准备:为类的静态变量赋值,并将其初始化为默认值

    • 解析:把类中符号引用转换为直接引用

      备注:符号引用与直接引用的理解

      https://www.cnblogs.com/qlky/p/7643524.html

  • 初始化:为类的静态变量赋予正确的初始值

posted @ 2022-03-06 01:03  灯塔下的守望者  阅读(32)  评论(0编辑  收藏  举报