[英]Groovy Generics failure
除了 groovy 比 java 更具动态性...
为什么这是 groovy 中的编译时错误(意外的令牌<
):
interface A {
<T> T getByClass(Class<T> clazz)
}
我如何以时髦的方式写这个?
Groovy 解析器不处理以通用信息开头的方法签名......
如果您添加 public 修饰符,它会解析:
interface A {
public <T> T getByClass( Class<T> clazz )
}
虽然我不相信你会在编译时获得任何类型检查来添加这个注释
只是为了完整性。 您可以使用def
而不是public
。 结果是相同的,因为 groovy 中的方法默认是公共的。
interface A {
def <T> T getByClass( Class<T> clazz )
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.