抽象类继承时子类bug

今天刚学到抽象类,子类Manager继承父类Employee时报错,按照提示添加了带参的构造器就好了。或者在父类中添加个显示无参构造器,子类中也不会报错,想请问下是为什么。

img

img

img

img

重点知识:在java中,当我们为一个类重载了构造方法之后,就不会默认创建一个无参的构造方法了。
所以,

  1. 创建子类的对象时,要先调用父类的构造方法,但是,父类只有自定义的带参构造方法,子类并未重写该方法,导致调用失败。
    所以,在子类中覆盖父类的自定义带参构造方法,就能调用成功了。调用方式为: new Emplyee(参数1,参数2,参数3);
  2. 在父类中添加了无参构造方法后,创建子类的实例时,即new Emplyee()时,会先调用父类的无参构造方法。因为父类中有这个方法,所以,能够调用成功。