|
|
1
6
是的,当您有其他构造函数时。
|
|
|
2
8
如果您有一个非默认的构造函数,那么默认的构造函数就不是隐式可用的。如果你的目标是不让任何人做,最好不要放一个:
|
|
|
3
6
如果指定了Java,则添加默认的公共无ARGS构造函数。 没有其他建设者 所以,如果你需要一个并指定另一个的话,放一个是有意义的。因此,在您的案例中,如果您像这样定义类:
那你就不能这样做了:
但如果是这样定义的:
你可以。 通常不使用arg构造函数来指定伪默认参数。例如:
|
|
|
4
3
除了前面所有的无参数构造函数的参数外,它是JavaBeans的强制元素,因为可以使用反射(特别是通过调用
还有一个额外的好处,因为一个无参数的构造函数可以让您通过链式设置器调用来帮助引入一种流畅的接口。例如,在我工作过的一家公司中,使用如下方法定义了beside setters和getter:
允许我按以下方式创建对象:
这是在不定义bug构造函数的情况下创建对象的一种非常有用的方法。 |
|
|
5
0
某些框架将要求您具有零参数/默认构造函数。例如,您需要一个作为JUnit测试用例运行类。[编辑:删除了不正确的语句] 这是因为他们使用了反射。 |
|
KiraHoneybee · 具有构造函数参数的模板化类 3 年前 |
|
|
nick2225 · 隐式调用复制构造函数? 3 年前 |
|
|
nohaga · 为什么在本例中p3需要默认构造函数? 3 年前 |
|
|
Aadil Hoda · 为什么类类型的成员需要初始化? 3 年前 |
|
|
EloiGG · 具有任意类型的变量的可数的C++函数 3 年前 |