Closure – 闭包
在Java中的Lambda和Groovy的Closure非常相似,但是底层的实现机制是非常不同的。
# 简单示例
对于一个「闭包」的简单使用如下:
// 声明一个闭包
Closure listener = { e -> println “Clicked on $e” }
// 两种调用方式
listener(“str”)
listener.call(“str”)
调用方式两种:以函数的方式调用;或者调用call()方法。
# 作为参数传递
「闭包」也可以作为方法的参数传入。类似于“传递函数的调用”。看[……]