4.3Groovy闭包的使用

ぃ、小莉子 提交于 2019-11-28 10:00:05

// 定义类
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

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!