首页 > 技术文章 > 父类与子类的静态代码块与构造器的执行顺序

xuzhuo123 2021-08-25 20:42 原文

父类与子类的静态代码块与构造器的执行顺序

代码如下

class B extends Object
{
    static
    {
        System.out.println("Load B");
    }
    public B()
    {
        System.out.println("Create B");
    }
}
class A extends B
{
    static
    {
        System.out.println("Load A");
    }
    public A()
    {
        System.out.println("Create A");
    }
}

public class Testclass
{
    public static void main(String[] args)
    {
        new A();
    }
}

答案为Load B -> Load A ->Create B ->Create A

解释:父类静态代码块 --> 子类静态代码块 --> 父类构造器 --> 子类构造器

推荐阅读