私は、次のコードに取り組んでいます:groovy.lang.MissingPropertyException:いいえ、そのようなプロパティ:クラスの所有者:母親
は出産方法の閉鎖で「this.owner」で例外をキャッチしました。
で仕上げを実行し、class Mother {
int field = 1
int foo(){
return 2
}
Closure birth(param){
def local = 3
def closure = {caller -> [this,field,foo(),local,param,caller,this.owner]}
return closure
}
}
Mother m = new Mother();
closure = m.birth(4);
context = closure.call(this);
println context[0].class.name
assert context[1..4] == [1,2,3,4]
assert context[5] instanceof Script
assert context[6] instanceof Mother
fClosure = m.birth(4);
sClosure = m.birth(4);
assert false == fClosure.is(sClosure)
:なぜ母
:
'this.owner' キャッチgroovy.lang.MissingPropertyException:いいえ、そのような プロパティ:クラスの所有者をそれ?
私の答えは問題を解決しますか?もしそうなら、それを受け入れてください。 – Opal