1.静态代码块:在类加载的时候运行,不能访问普通变量,不能存在任何方法体中;
(2)静态方法:类初始化的时候加载 (3)静态变量:类初始化的时候加载2.构造代码块: (1)每次创建对象的时候都会提前调用一次构造代码块 (2)构造代码块不是优先于构造函数执行,而是依托于构造函数对象的初始化顺序: 首先执行父类静态的内容,父类静态的内容执行完毕后,接着去执行子类的静态的内容, 当子类的静态内容执行完毕之后,再去看父类有没有构造代码块,如果有就执行父类的构造代码块, 父类的构造代码块执行完毕,接着执行父类的构造方法;父类的构造方法执行完毕之后,它接着去看子类有没有构造代码块, 如果有就执行子类的构造代码块。子类的构造代码块执行完毕再去执行子类的构造方法。