将class字节码文件加载到内存中,将这些静态的数据转换为方法区的结构数据,然后生成一个这个类的Class对象
确保加载的类符合JVM规范,没有安全方面的问题
正式为类变量分配内存并设置类变量的初始值,这些内存都在方法区进行分配
虚拟机常量池内的符号引用变为地址引用
执行类构造器< clinit>()方法的过程 初始化一个类的时候,如果发现其父类还未初始化,则先初始化父类 保证类的< clinit>()方法在多线程环境中被加锁和同步