看到这个方法定义:
<Y> Path<Y> get(String attributeName);
如何用简单的词语描述这种方法在做什么?
有关此类通用语法的任何官方文档?
答案 0 :(得分:0)
我认为Wikipedia总结了这个例子:
public static <Type> Entry<Type, Type> twice(Type value) {
return new Entry<Type, Type>(value, value);
}
注意:如果我们删除上述方法中的第一个,我们将得到编译错误(找不到符号&#39; Type&#39;)因为它代表了符号的声明。
在您引用的方法签名中,第一个<Y>
是类型的声明。最有可能的是,如果它被删除,编译器将无法推断它是什么类型。
答案 1 :(得分:0)
谢谢@Tim Biegeleisen。我认为可以更好地解释这个想法,但两者都是有效的
https://docs.oracle.com/javase/tutorial/extra/generics/methods.html