一个类集成了java.util.Date
public class DBDate extends Date implements IDBDate {
private static final long serialVersionUID = 1722199654569062027L;
private Date date ;
public DBDate(Date dateParam) {
this.date = dateParam;
}
public String toString() {
if(date == null)
return null;
if(String.valueOf(date).indexOf(":") > -1){
return DateUtil.formatDate(date, DateUtil.TIME_FORMAT);
}else{
return DateUtil.formatDate(date, DateUtil.DATE_FORMAT);
}
}
}
然后写测试类。
public static void main(String[] args) {
Date date = new Date();
date.setTime(date.getTime() - Integer.MAX_VALUE);
System.out.println(DateUtil.formatDate(date, DateUtil.TIME_FORMAT));
DBDate dbdate = new DBDate(date);
System.out.println(DateUtil.formatDate(dbdate, DateUtil.TIME_FORMAT ) );
}
输出的结果不同了。
2015-03-25 04:59:42
2015-04-19 01:31:06
第二个永远是当前时间。
是因为第二个输出,只是给DBDate的date变量赋值而已,
以上的代码第二个输出也要和第一个一样,应该怎么改造呢?
本来是想要实现Date接口的,但它是一个普通bean