java初始化优先级

一、细节

1.先执行父类,后执行子类。
2.先执行属性,后执行构造函数。
3.先执行静态,后执行非静态。
4.静态属性和静态代码块,按由上到下顺序执行。
5.同类型,按顺序执行。
6.父类实例成员和实例初始化块,按顺序执行。

二、初始化对象

父类静态变量、父类静态代码块、子类静态变量、子类静态代码块、父类非静态变量、父类非静态代码块、父类构造函数、子类非静态变量、子类非静态代码块、子类构造函数

三、初始化优先级

静态变量,静态代码块(先父再子)->非静态变量,非静态代码块,构造函数(先父再子)。

猜你喜欢

转载自blog.csdn.net/weixin_43166227/article/details/94547119