在主方法实例化子类,父类有属性赋值。
首先加载,加载父类静态之后加载子类静态,加载完程序之后执行构造,先一直找子类的父类,直到找到object,没有父类之后会返回object的子类,次吃对象构造完成,加载父类成员属性赋值,执行父类构造代码块,父类构造方法,此时对象中已经有值。之后执行子类属性,子类构造代码块,子 类构造方法。
总结
子类对象的实例化顺序—
在执行完程序的时候完成了类的加载,先加载父类静态,然后子类静态,在进行子类对象的实例化过程中,先逐层完成父类对象的加载,包括属性构造代码块构造方法,最终到子类。
关于静态的加载顺序
与访问修饰符无关,代码位置直接决定