次のコードでは、Child
クラス(つまりfoo, bar
)で利用可能なすべてのプロパティが必要です。 groovyが追加した他のすべてのプロパティには興味がありません。私は私にこれを与えるいくつかの直接的な方法を見つけるためにしようとしていますGroovy:基底クラスで宣言されたプロパティを取得する方法
println Child.fields
println Child.properties.each{k,v->println "$k -> $v"}
println Child.declaredFields.findAll { !it.synthetic }.collect {it.name}
println Child.methods.findAll {it.name.startsWith("get")}.collect {it.name}
:これらの
class Parent {def foo}
class Child extends Parent {def bar}
これまでのところ、どれも結果を取得していません。
おかげで、私は、問題のコードを更新しました。実際にここではクラスのインスタンスがありません。クラスで宣言されているすべてのプロパティを取得し、それらのプロパティに基づいていくつかのメソッドをクラスに追加する必要があります。 – kunal