代码:
package jerry;
class SomeGroovyClass {
def field1 = ‘ha‘
def field2 = ‘ho‘
def getField1() {
return ‘getHa‘
}
}
def a = new SomeGroovyClass()
println a.field1
println a.field2
println ‘------------------------------‘
println a.metaClass.getAttribute(a, ‘field1‘)
println a.metaClass.getAttribute(a, ‘field2‘)
如果直接用实例.属性名的语法访问属性,如果针对某属性定义了getter方法,则访问该属性时,getter方法会自动被触发。
参见上面代码横线之前的打印内容。
如果想绕过getter方法,使用实例的metaClass.
?