【发布时间】:2009-05-31 22:39:28
【问题描述】:
我想要一种从 java Date 对象获取当前 unix 时间戳的好方法,这是我的解决方案:
public class Date extends java.util.Date {
public int getUnixTimeStamp() {
int unixtimestamp = (int) (this.getTime() * .001);
return unixtimestamp;
}
}
这很好,但问题是当我尝试将 java Date 对象转换为我的自定义日期类时,即:
Calendar foo = Calendar.getInstance();
foo.set(0, 0, 0, 12, 30);
myapp.Date foo2 = (myapp.Date)foo.getTime();
这会生成:线程“main”中的异常 java.lang.ClassCastException:java.util.Date 无法转换为 myapp.Date
我明白为什么会出现这个异常,但是有没有办法将超类转换为子类?如果没有,您将如何实现 unixtimestamp 方法?我经常在我的应用程序中使用它。
【问题讨论】: