可能是一个非常愚蠢的问题但是我无法使用date来使用默认构造函数。这就是我剩下的事情。谢谢,如果你能解释为什么你初始化它也会很棒。谢谢你!
private String first;
private String last;
private double sales;
private Date date;
public SalesAgent(){
this("", "", 0, (my problem lays here) );
}
public SalesAgent(String first, String last, double sales, Date date){
setDate(date);
setFirst(first);
setLast(last);
setSales(sales);
}
答案 0 :(得分:1)
如果你有一个no-arg构造函数作为另一个设置字段的构造函数的传递,那么首选的约定是直接设置字段而不是通过setter。
public SalesAgent() {
// Seems more desirable to instantiate a new Date than leave it null
this("", "", 0, new Date());
}
没有二传手:
public SalesAgent(String first, String last, double sales, Date date) {
this.first = first;
this.last = last;
this.sales = sales;
this.date = date;
}