开发喵星球

JVM中类加载是什么?

类加载是Java虚拟机(JVM)将类的字节码数据从类文件加载到内存中,并转换成运行时数据结构的过程。在Java中,类的加载是实现动态性的基础,它使得在运行时可以加载新的类,扩展应用程序的功能。

类加载的主要任务包括:

  1. 加载(Loading):

    • 查找并加载类的字节码数据。
    • 从文件系统、JAR文件、网络等地方获取类的字节码数据。
  2. 链接(Linking):

    • 验证:确保加载的类符合Java语言规范,不会造成虚拟机错误。
    • 准备:为类的静态变量分配内存并初始化默认值。
    • 解析:将类中的符号引用转换为直接引用。
  3. 初始化(Initialization):

    • 执行类的初始化代码,包括静态变量的赋值和静态代码块的执行。

类加载器(ClassLoader):

双亲委派模型:

应用场景:

Proudly powered by WordPress