我想从GregorianCalendar
a instanceof
获取Calendar
个对象。显然我可以强制转换Calendar
对象,因为在大多数情况下,抽象Calendar
的实际实现是GregorianCalendar
。但如果我不知道什么是真正的实现,我想强制创建另一个GregorianCalendar
的{{1}}版本?我该怎么办?
我找了很多搜索引擎,但我一无所获。
答案 0 :(得分:0)
你不应该这样做,因为GregorianCalendar扩展日历。 我认为唯一的方法是投射它,但检查之前的实例:
if (cal instanceof GregorianCalendar) {
GregorianCalendar gregorianCalendar = (GregorianCalendar) cal;
...
}
答案 1 :(得分:0)
简单:
new GregorianCalendar()
如果您已经有要复制的日历实例,则应在现有日历(例如时区)和/或set()
构建后添加相应的参数(例如日期)。