http://groovy.codehaus.org/Things+you+can+do+but+better+leave+undoneなぜグルービーの.classが(.getClass異なる値を返すことはない)
プロパティなど、オブジェクトの種類にアクセスする
によると.classファイルの使用の代わりに.getClass() あなたが持っているオブジェクトの種類が正確にわかっている限り、大丈夫です。しかし、あなたはそれを allで必要としません。そうしないと、ヌルまたは何か他のものが得られる危険にさらされますが、 オブジェクトのクラスは実行されません。
a = [:] println a.class.simpleName // a.classがnullであるため、NullPointerExceptionです。
これはなぜか説明できますか? a
がマップされたときに、a.class
がa.get("class")
としてGroovyで同じなので、なぜgetClass()
ああ、なるほど。だからマップに特化しています。 –