构造函数,静态代码块,匿名代码块的执行顺序

1.静态代码块

static{
        System.out.println("Child静态代码块");
    }

2.匿名代码块

{
        System.out.println("Child匿名代码块");
    }

3.构造方法

public Child(String name){
        super(name);
        System.out.println("child有参构造");
    }

  静态代码块是与类一起加载的所以静态代码块是最先执行的,而且只执行一次;匿名代码块是先于构造方法执行,而且每次在new实例化对象的时候都会执行一次;构造方法是最后执行。

  在子类继承父类中每个构造方法中默认(super())都会调用父类的无参构造,除非自己写覆盖掉,所以在继承关系中在实例化子类时总会先执行父类的构造函数,最后才执行子类。

posted on 2020-11-20 18:32  Difcipo  阅读(108)  评论(0编辑  收藏  举报

导航