是否有可能在闭包的执行上下文中获取调用闭包的Object的引用? 例如: public class Example { public Example(){ def a = {return this}; def b = []; b.metaClass.a = a; println b.a(); } } 我希望这次执行返回b,而不是Example的实例。
闭包调用时可以将其所在的对象引用为delegate。示例:def a = { return delegate } def b = [] b.metaClass.a = a assert b.a() == b