Pythonでは、オブジェクトに含まれるメソッドとフィールドを確認できます。
print dir(my_object)
Groovyのそれと同等のものは何ですか(それが1つあると仮定して)?
Groovyでは特に見栄えがします(テストされていない、このリンクから取得したので、コードクレジットはそこに行く必要があります):
// Introspection, know all the details about classes :
// List all constructors of a class
String.constructors.each{println it}
// List all interfaces implemented by a class
String.interfaces.each{println it}
// List all methods offered by a class
String.methods.each{println it}
// Just list the methods names
String.methods.name
// Get the fields of an object (with their values)
d = new Date()
d.properties.each{println it}
あなたが探している一般的な用語は内省です。
ここで説明するように、Stringオブジェクトに定義されているすべてのメソッドを見つけるには:
"foo".metaClass.methods*.name.sort().unique()
Pythonバージョンほど単純ではありません。おそらく、他の誰かがより良い方法を示すことができます。
通常のJavaリフレクションAPIを使用するだけでなく、次のようなものがあります。
http://docs.codehaus.org/display/GROOVY/JN3535-Reflection
メタクラスを使ってゲームをプレイすることもできます。