为什么要使用它们?顺便说一下,我是一个初学者。我理解初始化值的默认构造函数,因为它在逻辑上是合理的,但是为什么使用带有参数的构造函数来表示实例变量age例如等于a。目的是什么?没有它,只有初始化构造函数会发生什么?在这里问的其他问题没有意义 例如:
public class MyCats {
private int age;
private String name;
public MyCats(int a, String n) { // why do I need this?
age = a;
name = n;
}
public MyCats() {
age = 0;
name = "";
}
}
答案 0 :(得分:6)
这是为了轻松创建类而无需额外的代码。例如,不要这样做:
request.auth.uid
您可以这样做:
MyCats a = new MyCats();
a.setAge(12);
a.setName("Foo");
更简单,哼?
如果简短程度不够,您可能更喜欢稍后的其他原因:
通常在最后一种情况下,能够在构造时检查正确性并禁止任何对象处于无效状态非常有用,以后可以节省很多错误。