java类的加载顺序
1.静态代码块和静态变量,谁在前谁先执行,如果静态代码块中有静态变量的运算操作,需要将静态变量放在静态代码块之前.静态代码块和静态变量在类第一次加载的时候产生
private static int i;
static{
i++;
}
2.Main方法(里面调用的如果有静态的,先执行)
3.自身成员变量和构造代码块
构造代码块,在类创建的时候运行,即new一个新对象的时候执行.
4.构造函数
无参构造,有参构造谁被调用谁执行
5.静态方法
6.实例方法只有在调用的时候才会去执行
父类子类的加载顺序
1.父类的静态变量和静态块赋值(按照声明顺序)
2、自身的静态变量和静态块赋值(按照声明顺序)
3、main方法
3、父类的成员变量和块赋值(按照声明顺序)
4、父类构造器赋值
5、自身成员变量和块赋值(按照声明顺序)
6、自身构造器赋值
7、静态方法,实例方法只有在调用的时候才会去执行