子类继承父类,如果子类的构造方法第一行没有显示的调用父类的构造方法,也会默认调用父类无参的构造方法。如果父类没有无参的构造方法,必须显示调用父类有参的构造方法,否则编译不通过。super()只能放在构造方法的第一行,否则编译不通过。
为什么子类构造方法必须调用父类的构造方法?
子类继承父类,会继承到父类中的数据,所以必须要看父类是怎么对自己的数据进行初始化的。子类在进行对象初始化时,先调用父类的构造方法,这就是子类实例化的过程。
子类继承父类,如果子类的构造方法第一行没有显示的调用父类的构造方法,也会默认调用父类无参的构造方法。如果父类没有无参的构造方法,必须显示调用父类有参的构造方法,否则编译不通过。super()只能放在构造方法的第一行,否则编译不通过。
为什么子类构造方法必须调用父类的构造方法?
子类继承父类,会继承到父类中的数据,所以必须要看父类是怎么对自己的数据进行初始化的。子类在进行对象初始化时,先调用父类的构造方法,这就是子类实例化的过程。