Java错误:未为默认构造函数定义隐式超级构造函数

Java错误:未为默认构造函数定义隐式超级构造函数,第1张

Java错误:未为默认构造函数定义隐式超级构造函数

你会收到此错误,因为没有构造函数的类具有默认构造函数,该构造函数没有参数,并且等效于以下代码:

public ACSubClass() {    super();}

但是,由于你的baseClass声明了一个构造函数(因此没有默认值,否则将由编译器提供no-arg构造函数),这是非法的-扩展baseClass的类无法调用,

super()
;因为没有无参数的构造函数在baseClass中。

这可能有点违反直觉,因为你可能认为子类自动具有基类所具有的任何构造函数。

解决此问题的最简单方法是,基类不声明构造函数(因此具有默认的no-arg构造函数)或具有声明的no-arg构造函数(无论是单独使用还是与任何其他构造函数一起使用)。但是通常无法应用这种方法-因为你需要将任何参数传递到构造函数中,以构造类的合法实例。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5462400.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存