子类和父类构造器、静态代码块执行顺序

执行顺序:静态代码块>mian方法>构造代码块>构造方法

  • 其中静态代码块(类初始化块)只执行一次,构造代码块在每次创建对象时都会执行。

  • 构造代码块(实例初始化块)是“假象”,一个类在编译过后,构造代码块就会消失------构造代码块的代码会被还原到每个构造器之前。

在父类和子类的继承关系中的执行顺序:父类静态代码块>子类静态代码块>父类构造代码块>父类构造方法>子类构造代码块>子类构造方法

  • 类(对象)中没有构造器时,是默认会自动创建一个无参构造器的;
  • 当类(对象)中只有有参构造器时,就不会再自动创建一个无参构造器了;
  • 当子类的构造器中没有实现super()方法时,默认在调用子类构造方法之间先调用父类的无参构造方法。
posted @ 2021-06-26 11:50  又又又8  阅读(686)  评论(0编辑  收藏  举报