2

如何使日期设置器方法安全。下面的方法正确吗?

public void setBirthDate(Date birthDate) {
        birthDate = (Date)birthDate.clone();
}

谢谢杰

4

2 回答 2

0

Date是一种对象类型,但它是可变的,这意味着一旦date创建了对象,就可以更改它。Dateclone()从对象类实现。因此,使用克隆创建 setter 方法总是更好。

public void setBirthDate(Date birthDate) {  
    this.birthDate = (Date) birthDate.clone();  
}  

public Date getBirthDate() {  
    return (Date) this.birthDate.clone();  
} 
于 2013-03-14T13:15:46.457 回答
0

你最好用this.birthDate = new Date (birthDate.getTime ()). 在这种情况下,您肯定知道会发生什么。

于 2013-03-14T13:32:42.953 回答