类中代码运行顺序

一个普通类A(无父类,Object不算)

  • static {} 静态代码块只调用一次。
  • 初始化时,静态变量、静态代码块执行先后顺序为在代码中书写的先后顺序。
  • 每创建一个实例对象都会执行一次创建这个实例的构造方法。

一个子类B(继承A)

  • 执行自己的静态代码块前,会执行父类的静态代码块。
  • 创建一个实例对象会先执行父类的构造方法(子类构造方法中super的父类构造方法,没有就是父类的默认构造方法),再执行创建这个实例的构造方法。

猜你喜欢

转载自blog.csdn.net/hooandlee/article/details/88903741