java 哪些时候会类加载

1、创建对象实例时
2、创建子类对象实例时,父类会被加载;先执行父类,再执行子类
3、使用类的静态成员时
public class Class {
    public static void main(String[] args){
        //以下3种情况 类会被加载
        //1、创建对象实例时;
        new AA();
        //2、创建子类对象实例时,父类会被加载;先执行父类,再执行子类
        new BB();
        //3、使用类的静态成员时
        System.out.println(CC.n);
    }
}
class AA{
    static{
        System.out.println("AA静态代码块执行");
    }
}
class BB extends AA{
    static {
        System.out.println("BB代码块被执行");
    }
}
class CC extends AA{
    public static int n = 90;
    static {
        System.out.println("CC代码块被执行");
    }
}