【发布时间】:2013-04-17 08:23:49
【问题描述】:
我有这个方法:
void updatePet(String userid, int index, int happiness, Date lastUpdated, PetLifePhase state, Date created)
对它的所有调用都会被记录(通过反射Proxy)。参数是String.valueOf()'d 并连接起来:
updatePet(xxxxxxxx,18,-96,Wed Apr 17 08:10:11 UTC 2013,ACTIVE,2013-04-10 08:01:12.442)
注意两个Date 参数的输出:
-
lastUpdated:Wed Apr 17 08:10:11 UTC 2013(遵循Date.toString()的Javadoc) -
created:2013-04-10 08:01:12.442
如何,为什么,何时,嗯?为什么同一个方法输出两种不同的格式?我查看了这个toString() 的源代码,但它的输出第一种格式是硬编码的,没有ifs 可能会做出其他决定。
【问题讨论】:
-
1) 你能提供形成日志记录的代码吗 2) 你怎么称呼
updatePet,可能一个是java.util.Date而第二个是Calendar3) 你是同步调用的吗? -
它们是同一类型(类)的 Date 对象吗?
-
检查你的类导入。你使用的是同一个 Date 类吗?
-
啊,我不知道(或者说,在正确的时间没有记得)java.util.Date 子类存在。我怀疑它可能是 java.sql.Date。要去调查它...