java初始化顺序

public class A {
    {
        System.out.println("A初始化块");
    }
    static{
        System.out.println("A静态初始化块");
    }

    public A(){
        System.out.println("A构造方法");
    }
}
public class B extends A {
    {
        System.out.println("B初始化块");
    }
    static{
        System.out.println("B静态初始化块");
    }

    public B() {
        System.out.println("B构造方法");
    }
    public static void main(String[] args) {
        new B();
    }
}

输出结果:

A静态初始化块
B静态初始化块
A初始化块
A构造方法
B初始化块
B构造方法

原文地址:https://www.cnblogs.com/YESheng/p/3657822.html