如何使用 clojure 在 java 类中找到所有不推荐使用的(或任何其他注释)方法?
(filter #(.isAnnotationPresent % java.lang.Deprecated) (.getMethods (type java.util.Date)))
返回空列表,因为(type java.util.Date)
返回java.lang.Class
. 我如何获得正确的课程?
如何使用 clojure 在 java 类中找到所有不推荐使用的(或任何其他注释)方法?
(filter #(.isAnnotationPresent % java.lang.Deprecated) (.getMethods (type java.util.Date)))
返回空列表,因为(type java.util.Date)
返回java.lang.Class
. 我如何获得正确的课程?
只需省略类型:
(filter #(.isAnnotationPresent % java.lang.Deprecated)
(.getMethods java.util.Date))
现在,如果您想从字符串中执行此操作,则只需执行
(filter #(.isAnnotationPresent % java.lang.Deprecated)
(.getMethods (Class/forName "java.util.Date"))
type 用于获取值的类型,现在由于符号被解析为实际的类,因此符号的类型是 java.lang.Class