代码块的输出顺序(静态、构造)

public class FuZi {
    public static void main(String[] args) {
        Zi z = new Zi();
    }
}

class Fu {
    static {
        System.out.println("父类静态代码块");
    }
    {
        System.out.println("父类构造代码块");
    }

    public Fu() {
        System.out.println("父类构造方法");
    }
}

class Zi extends Fu {
    static {
        System.out.println("子类静态代码块");
    }
    
    {
        System.out.println("子类构造代码块");
    }

    public Zi() {
        System.out.println("子类构造方法");
    }
}

打印结果:

1、静态>构造方法

2、子类初始化之前一定优先初始化父类

3、构造代码块>构造方法

posted @ 2019-09-12 10:16  子木每  阅读(212)  评论(0)    收藏  举报