有没有办法可以使用一对“常规”getter / setter方法创建Java类,例如
public Object get(String name);
public void set(String name, Object object);
并使Groovy翻译语句,例如
myObject.foo = 'bar'
到
myObject.set("foo", "bar")?
(myObject
是具有get(String)
和set(String, Object)
方法的Java类的实例)
答案 0 :(得分:3)
让你的java类扩展groovy.lang.GroovyObjectSupport
,它提供getProperty
和setProperty
的实现,或者实现接口groovy.lang.GroovyObject
答案 1 :(得分:0)
你必须在Groovy中编写两个方法(假设你从Java类派生你的Groovy类):
def getProperty(String name) { "This is the property '$name'" }
void setProperty(String name, value) { println "You tried to set property '$name' to '$value'" }