Java 静态域、 构造块、构造方法的执行顺序

主动学习给你带来的进步绝对让你很惊讶。

用最简单的语言阐述最深刻的知识,纯属个人总结,有所借鉴。

构造方法

与类同名且没有返回类型。对象创建通过构造方法完成,功能是完成对象的初始化,构造方法可以重载。

构造块

构造块给类进行初始作用,符号{}

只能用static修饰,加上static后就成为了静态块,只能初始化静态成员变量。

静态域

静态变量、静态方法、静态块,执行静态域时,按照顺序加载

关系

new对象时先执行构造块,执行构造方法,每new一个对象都执行一次。

静态域随类的加载执行,不管new了几个对象,静态域都只执行一次。 


执行顺序

静态域(静态变量 > 静态方法 > 静态块) > 构造 > 构造方法

一个简单的程序验证:

Java 静态域、 构造块、构造方法的执行顺序

我们来看一下运行结果:

Java 静态域、 构造块、构造方法的执行顺序

寒江孤影,江湖故人,相逢何必曾相识。