闭包委托策略

2020-03-17  本文已影响0人  龙剑灵
//闭包委托策略
class Student {
    String name
    def pretty = { "My name is ${name}" }

    String toString() {
        pretty.call()
    }
}

class Teacher {
    String name1
}

def stu = new Student(name: "jimmy")
def tea = new Teacher(name: "qq")
stu.pretty.delegate = tea
stu.pretty.resolveStrategy = Closure.DELEGATE_FIRST  //My name is qq
println  stu.toString()
上一篇 下一篇

猜你喜欢

热点阅读