1. 初始化阶段就是执行类过早期方法()方法的过程
    2. 此方法不需要定义,是javac编译器自动收集类中的所有类变量的显式赋值和静态代码块,合并为一个初始化方法
    3. 构造器的指令是按照字节码出现顺序执行的。
    4. ()不同于类的构造器() (任何一个类声明以后,内部至少存在一个类的构造器),如果没有静态变量则不会生成()类构造器方法。
    5. 如果父类也具有clinit,则jvm必须保证在子类的clinit执行之前父类clinit一定执行完毕
    6. 虚拟机必须保证一个类的clinit方法在多线程下被同步加锁。一个类的clinit只会被加载一次。