Grails [Groovy],如何获取类继承的所有方法的列表?

时间:2014-11-27 06:23:56

标签: grails groovy

我用它来收集一个班级的所有方法:

grailsApplication.getMainContext()的getBean。("的className&#34)。metaClass.methods *。名称

但是这会返回所有方法,包括继承的如何只过滤类所拥有的方法

1 个答案:

答案 0 :(得分:5)

这将为您提供过滤的方法名称列表,以仅包含仅属于声明类的方法(在此示例中为SomeClass):

SomeClass sc = new SomeClass()
List<String> declaringClassOnlyMethods = sc.metaClass.methods.findAll { MetaMethod method ->
    if(method.declaringClass.name == sc.class.name) {
        method.name
    }
}