1、执行顺序
静态代码块>构造代码块>构造方法
原因:
- 静态代码块(static{})在类加载的时候执行一次,是最早被执行的。
- 构造代码块({}内的部分)在每一次创建对象时执行,始终在构造方法前执行。
- 构造方法在新建对象时调用( 就是new的时候 )。
注意:
- 静态代码块在类加载的时候就执行,所以它的优先级高于入口main()方法。
- 当三种形式不止一次出现,同优先级是按照先后顺序执行。
程序代码示例:
public class StaticTest {
public static StaticTest t1 = new StaticTest();
public static StaticTest t2 = new StaticTest();
{
System.out.println("构造块");
}
static {
System.out.println("静态块");
}
public static void main(String[] args

本文详细探讨了Java中静态代码块、构造代码块和构造方法的执行顺序。在类加载时,静态代码块先执行;创建对象时,构造代码块总是在构造方法之前执行。对于父类和子类,执行顺序为:父类静态代码块 -> 子类静态代码块 -> 父类构造代码块 -> 父类构造方法 -> 子类构造代码块 -> 子类构造方法。文章还包含了相关代码示例和拓展知识点。

1665

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



