我想知道每当创建对象时如何在Java中执行方法。
例如:
public class Person {
private String name;
private int age;
private Date dateCreated;
public setName(String name){
...
}
... some other methods ...
public setDateCreated(){
this.dateCreated = new Date();
}
我真的希望我的setDateCreated()方法在创建每个对象时都可以执行。
最佳答案
您当然会意识到,该类违反了编码的Java Bean标准。
标准将期望看到Date对象传递给setDateCreated()
方法:
public void setDateCreated(Date newDate) {
this.dateCreated = ((newDate == null) ? new Date() : new Date(newDate.getTime()));
}
添加空返回类型后,您可以自由地执行此操作,但是如果其他代码希望您符合标准要求,也不要感到震惊。