0

为了访问具有类型参数的类的构造函数,我可以这样做:

> (.newInstance (.getConstructor java.util.Date (into-array java.lang.Class []))
          (object-array []))
;=> #inst "2013-04-27T04:00:55.498-00:00"

> (.newInstance (.getConstructor java.util.Date (into-array java.lang.Class [java.lang.String]))
          (object-array ["27 Apr 2013"]))
;=> #inst "2013-04-26T14:00:00.000-00:00"

java.util.Date也需要 along作为论点,我希望写一些类似的东西

> (.newInstance (.getConstructor java.util.Date (into-array java.lang.Class [long]))
          (object-array [0]))

如何才能做到这一点?

4

1 回答 1

1

原语的对象包装器都有一个TYPE可以在这些情况下使用的静态字段。

因此,对于您的具体示例,您需要...

(.newInstance 
  (.getConstructor java.util.Date 
     (into-array java.lang.Class [java.lang.Long/TYPE]))
        (object-array [0]))
;=> #inst "1970-01-01T00:00:00.000-00:00"
于 2013-04-27T07:43:42.723 回答