关于继承出现licit super constructor Person() is undefined. Must explicitly invoke another constructor的解决方案

出现Implicit super constructor Person() is undefined. Must explicitly invoke another constructor

解决方案:在父类中定义一个无参的构造器:
public 父类类名(){
}
即可解决

一般出现上述问题的原因是因为父类中存在了含参构造器,将无参构造器覆盖了,但是子类却默认调用父类的无参构造器。 (待修改,不确定是不是这样,才学没多少)

分界线 ---------------------------------------------------------------------------------------------------------

现在已经清楚了,是因为子类调用构造器时候,若无super(参数)的话,则会默认调用他的父类空参构造器,但是如果你的父类中存在了含参构造器,且没有自己定义无参构造器,则会报如上的错误。
如果我表达的不清楚的话,可以看这篇博客 https://blog.csdn.net/u010698072/article/details/51873404

发布了19 篇原创文章 · 获赞 1 · 访问量 473

猜你喜欢

转载自blog.csdn.net/qq_42878660/article/details/105332422