5

要查看类中的方法列表,我可以这样做 -

String.methods.each {println it}

如何列出实例的所有变量或类的所有静态变量?

编辑1:

在此处输入图像描述

在此处输入图像描述

编辑2:

HoneyBadger.java

public class HoneyBadger {
    public int badassFactor;
    protected int emoFactor;
    private int sleepTime;
}

test.groovy -

HoneyBadger.metaClass.properties.each {println it.name }

输出 -

class
4

1 回答 1

11

你可以这样做:

String.metaClass.properties.each { println it.name }

另一种选择(给定您的新示例)是:

import java.lang.reflect.Modifier

HoneyBadger.declaredFields
           .findAll { !it.synthetic }
           .each { println "${Modifier.toString( it.modifiers )} ${it.name} : ${it.type}" }
于 2013-07-30T12:27:01.240 回答