我在接受采访时被问到。似乎有一种情况,构造函数在编写java类时必须编写。我找不到合适的答案。请帮帮我。
干杯
答案 0 :(得分:5)
当你的基类没有标准的基类时,你必须编写一个构造函数,它不需要参数。
例如:
class A {
public A(int value) {
}
}
class B extends A {
}
此代码无法编译。 Java将尝试向B
添加默认构造函数,但它无法调用super()
,因为A
没有零参数构造函数。因此,您必须为B
定义构造函数。
答案 1 :(得分:1)
如果扩展没有无参数构造函数的类,则必须定义构造函数。