我希望调用String类的静态方法,该如何访问?
(ClassName/methodName arguments)
调用静态方法。class
不是静态方法,它是Java的一个关键字,在Clojure中不需要它。要获取与String类相关联的Class对象,只需使用String
。一个例子胜过千言万语:
(. String (valueOf 1))
我认为你的问题已经得到了回答,但如果你真的想要获取未知对象的类,可以使用class函数:
> (class "Foo")
java.lang.String
与Java相同,要指定java.lang以外的类作为字面量,您需要导入它们或使用点(.)分隔符指定完整的包+类名。
Class没有"类"方法,也没有"class"成员。如果你想得到Java中的String.class
相当的东西,那么符号String被映射到类java.lang.String。如果你想调用String类的静态方法,语法是(String/methodName arg1 arg2)
。