类加载机制分为加载,链接(验证,准备,解析),初始化,使用,卸载
加载
1. 通过一个类的全限定名来获取定义此类的二进制字节流。
2. 将这个字节流所代表的的静态存储结构转化为方法区的运行时数据结构。
3. 在内存中生成一个代表这个类的java.lang.Class对象,作为方法区这个类的各种数据访问入口。
验证
1. 文件格式验证。
2. 元数据验证。
3. 字节码验证。
4. 符号引用验证。
准备
1. 正式为类中定义的变量(静态变量)分配内存并设置类变量初始值得阶段。
解析
1. 解析阶段是将java虚拟机常量池的符号引用替换为直接引用的过程。
符号引用(接口、字段、类方法、接口方法、方法类型、字段句柄和调用点限定符)
初始化
1. 根据程序员通过程序编码指定的主观计划去初始化类变量和其他资源。