4.3Groovy闭包的使用

来源:互联网 发布:编程初学 编辑:程序博客网 时间:2024/06/13 18:33

// 定义类class Equipment {    // 属性:计算器    def calculator    // 构造方法    Equipment(cacl) {        // 接受闭包参数        calculator = cacl    }    // 方法:模拟器    def simulate() {        println "Running simulation"        // 调用闭包函数        calculator()    }}// 写法1:直接传入闭包def eq1 = new Equipment({ println "Calculator 1" })// 写法2: 将闭包赋值给变量def aCalculator = { println "Calculator 2" }def eq2 = new Equipment(aCalculator)def eq3 = new Equipment(aCalculator)eq1.simulate()eq2.simulate()eq3.simulate()
运行结果:

Running simulation
Calculator 1
Running simulation
Calculator 2
Running simulation
Calculator 2