一:静态代码块
注意是代码块,不是静态函数。函数要调用才执行,代码块加载就执行,一般是静态变量的声明与初始化、被static修饰的代码块(赋值、输出操作等)。类中静态语句块仅在类加载时被执行一次
二:构造代码块
构造代码块是指不在类的任何一个方法中的代码。一般为全局变量的声明与初始化、顺序执行的输出语句等等。如果没有static修饰的话,这些代码按照编码时顺序执行。
Java会把构造代码块放到每种构造方法的前面(乱序执行),用于实例化一些共有的实例变量,减少代码量。
三:构造方法
类的构造方法。
在涉及继承时执行顺序为:父类静态代码块——子类静态代码块——父类构造代码块——父类构造函数——子类构造代码块——子类构造函数(除了静态的,构造代码块和构造函数都是先执行父类的!)
本文详细解析了Java中静态代码块、构造代码块及构造方法的执行顺序,并特别强调了在涉及继承的情况下这些代码块的具体执行流程。
1万+

被折叠的 条评论
为什么被折叠?



