JVM类加载机制
类加载机制是Java虚拟机(JVM)在运行Java程序时负责将类加载到内存中的过程。包括以下步骤:
1. 加载(Loading)
在此阶段,类加载器负责查找类的字节码文件,并将其加载到内存中。
字节码可以来自文件系统、网络等位置。
加载阶段不会执行类中的静态初始化代码。
2. 连接(Linking):连接阶段包括三个子阶段
- 验证(Verification)
- 确保加载的类文件格式正确,并且不包含不安全的构造
- 准备(Preparation)
- 在内存中为类的静态变量分配内存空间,并设置默认初始值。
- 这些变量在此阶段被初始化为默认值,比如数值类型为0,引用类型为null。
3. 初始化(Initializatone)
- 在此阶段,执行类的静态初始化代码,包括静态字段的赋值和静态代码块的执行。
- 静态初始化在类的首次使用时进行,
- 可以是创建实例、访问静态字段或调用静态方法。