为该 Student 类注入一个 hello 方法 , 先获取 Student 类的 metaClass 成员 , 然后为其注入 hello 方法 , 使用 << 符号 , 后面带上一个闭包 , 即可注入方法 , 在闭包中 , delegate 就是 Student 对象 ;...
重写 MetaClass#invokeMethod 方法 , 不仅可以拦截自定义的类中的方法 , 还可以拦截 JDK 中已经定义完毕的方法 ;
Groovy 可以对 JDK 中的一些类进行 方法扩展 , 这些 JDK 自带类可以执行额外的扩展方法 ;
个方法 , 那么可以直接向 setOnClickListener 方法中传递一个闭包 , 该闭包相当于 OnClickListener 接口中的 onClick 方法 ;
分别在 Groovy 脚本 和 Test 类中定义 fun 方法 , 打印不同的内容 ;
在 Groovy 脚本中 , 在 Closure 闭包中 , 可以直接调用 Groovy 脚本中定义的方法 ;
在闭包中 , 打印 this , owner , delegate , 打印结果都是闭包所在的类 ;
在 实例对象后使用 " () " 括号符号 , 表示调用该实例对象的 " call() " 方法 ;
闭包 Closure 提供了 curry , ncurry , rcurry 方法 , 这
一、报错信息在使用 Groovy 闭包时 , 会报如下错误 :Exception in thread "main" groovy.lang.MissingMethodException: No signature of method: Test$_main_closure3.call() is applicable......