field_access.groovy
class A {
def foo
}
def a = new A(foo: 'Foo')
assert a.foo == 'Foo' // プロパティアクセス(暗黙的)
assert a.getFoo() == 'Foo' // プロパティアクセス(明示的)
assert a.foo == 'Foo' // フィールドアクセス
assert a['foo'] == 'Foo' // マップアクセス
assert a.getAt('foo') == 'Foo' // マップアクセス(メソッド)
assert a.'foo' == 'Foo' // プロパティアクセス(文字列)
assert a."f${'o'*2}" == 'Foo' // プロパティアクセス(GString)
a['foo'] とかのマップアクセスも出来るのは知らなかったのでメモがてら。
なんだかJavaScriptっぽいですね。