类加载机制与类加载器
类加载机制/类加载器 类加载的完整流程(生命周期) 类从加载到卸载经历 5 个阶段,其中加载、验证、准备、初始化、卸载的顺序是固定的,解析阶段可能与初始化交叉进行: 1. 加载(Loading) 任务:通过类的全限定名(如com.example.User)获取其字节码数据,并生成Class对象。 来源:字节码可来自本地文件、网络、数据库、动态生成(如 CGLib)等。 关键组件:类加载器(ClassLoader)负责此阶段。 2. 验证(Verification) 任务:确保字节码符合 JVM 规范,避免恶意或无效字节码危害虚拟机安全。 验证内容 文件格式验证(魔数、版本号等) 元数据验证(类继承关系、字段方法合法性) 字节码验证(指令逻辑正确性) 符号引用验证(常量池引用有效性) 3. 准备(Preparation) 任务 :为类的静态变量分配内存并设置 初始默认值 (非显式赋值)。 例如:public static int a = 10;在准备阶段a的值为0(int...



