一、从结果上看:(继承性)
子类继承父类以后,就获取了父类中声明的属性或方法。
创建子类的对象,在堆空间中,就会加载所有父类中声明的属性。
二、从过程上看:
当我们通过子类的构造器创建子类对象时,我们一定会直接或间接的调用其父类的构造器,进而调用父类的构造器,直到调用了java.lang.Obiect类中空参的构造器为止。正因为加载过所有的父类的结构,所以才看到内存中有父类中的结构,子类对象才可以考虑进行调用。
注意:虽然创建子类对象时,调用了父类的构造器,但是自始至终就创建过一个对象,即为new的子类对象。
三、图文解析:
因为在类的多个构造器中,至少有一个类的构造器使用了"super(形参列表)",调用父类中的构造器。