我有一个方法应该使用前两个参数Car和Tire进行Closure,并且应该返回一种类型的车辆。
有没有办法在Groovy Closures中声明参数类型?
我在想
method(Closure<Vehicle, Car, Tyre> closure);
但是正确的方法是什么?
答案 0 :(得分:5)
您只能定义Closure的返回类型,即:Closure<Vehicle>
从Groovy 2.3开始,您可以使用@ClosureParam
来调整类型系统(请参阅“调整类型系统” here),但Groovy 2.3目前不在Grails我相信......
答案 1 :(得分:0)
Closure上的泛型参数用于返回类型。 Closure<String>
将返回一个字符串。
可以使用@ClosureParams
注释