如何在clojure中调用java静态方法?

时间:2011-03-24 19:34:38

标签: clojure

我希望在String类上调用class。如何访问此静态方法?

4 个答案:

答案 0 :(得分:43)

您可以使用(ClassName/methodName arguments)调用静态方法。

但是class不是静态方法,它是一个java关键字,你在clojure中不需要它。要获取与String类关联的Class对象,只需使用String

答案 1 :(得分:15)

一个例子值100个字:

(. String (valueOf 1))

答案 2 :(得分:6)

Class没有“class”方法,也没有“class”成员。符号String被映射到类java.lang.String,如果你想得到的是Java String.class的等价物。如果要调用String类的静态方法,则语法为(String/methodName arg1 arg2)

答案 3 :(得分:5)

我认为你的问题已得到解答,但如果你真的想要获得一个未知对象的类,你可以使用类函数:

> (class "Foo")
java.lang.String

与java一样,要将java.lang之外的类指定为文字,您需要导入它们,或者使用点(。)分隔符指定完整的包+类名。