在 Clojure 中,我使用什么函数来查看 Java 对象的方法?
user=> (some-function some-java-object)
... lots of methods ...
最佳答案
从 1.3 版开始,Clojure 与 clojure.reflect
捆绑在一起。命名空间。函数reflect
特别是可用于显示对象的所有方法(和其他信息)。使用起来不如show
方便。另一方面,它更通用,使用 reflect
作为构建 block 很容易编写您自己的 show
版本。
例如,如果您想查看返回字符串的所有方法:
user=> (use 'clojure.reflect)
user=> (use 'clojure.pprint)
user=> (->> (reflect "some object")
:members
(filter #(= (:return-type %) 'java.lang.String))
(map #(select-keys % [:name :parameter-types]))
print-table)
关于java - 我如何查看与 Clojure 中的对象关联的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7986136/