3 回答

TA贡献2011条经验 获得超2个赞
您的代码非常好。根本不需要默认构造函数。您甚至可以将所有构造函数设为私有,这样您就无法访问任何构造函数:
public class PrivateClassTest{ // Default constructor that is not accessible by others private PrivateClassTest() { } }

TA贡献1847条经验 获得超11个赞
构造函数用于初始化对象。换句话说,构造函数为对象提供内存。如果不初始化一个对象,我们就不能使用它的属性。
但是在 Java 中不需要定义或声明默认构造函数。如果我们没有声明或定义它,编译器会在程序中隐式添加一个默认构造函数。

TA贡献1887条经验 获得超5个赞
当我们在项目结构中实现继承时,我们需要默认构造函数。
例子:
Class Apple{
Apple(){}
Apple(String a){
System.out.pritnln(a);
}
}
Class Banana extends Apple{
Banana(){}
public static void main(String[] args){
Apple("Eaten");
}
}
在上述场景中,如果您不为类声明任何默认构造函数,Apple那么它将抛出错误:
Implicit super constructor Apple() is undefined for default constructor. Must define an explicit constructor
因为类Banana总是会尝试调用未参数化的超级构造函数,如果您已经声明了一个参数化构造函数,那么您必须需要声明默认构造函数。
添加回答
举报