如何从Groovy中的MetaClass方法引用GroovyObject实例?

时间:2009-02-15 02:02:45

标签: groovy metaclass

这是我想要做的一个人为的例子,但最低限度地表达了所需的行为。我想引用调用属性访问的对象的实例。我首先尝试'this',但是它引用了封闭类,而不是MetaClass或String实例。

String.metaClass.propertyMissing = { String name ->
    'I do not exist, but my name is ' + <the String instance> + '.' + $name
}

1 个答案:

答案 0 :(得分:16)

您可以使用“delegate”来引用该对象:

String.metaClass.propertyMissing = { String name ->
    "I do not exist, but my name is $delegate.$name"
}


println "a".me