集成java.util.Date的困惑

一个类集成了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

可以了。不需要变量date.直接从父类获取

new DBDate().toString();

DateUtil.formatDate是直接取传入对象的gettime的,和tostring没关系。
另外,继承后就是date,date的公共方法属性和转换都能使用。,没必要再弄个内部变量做date了,再定义一个date内部变量反而有问题。