以下方法定义的第一部分是什么?
<I, O> MyReturnType<I, O> myMethod() { ... }
第二个是方法的返回类型,第三个是方法名称,但是第一个是什么?
I
并O
声明为泛型类型参数。它们是方法本身引入的泛型类型,如下所示:https : //docs.oracle.com/javase/tutorial/java/generics/methods.html
泛型方法是引入自己的类型参数的方法。这类似于声明泛型类型,但是类型参数的范围仅限于声明它的方法。允许使用静态和非静态的泛型方法,以及泛型类的构造函数。
如果您不声明<I, O>
,java会查找称为I
和的类型O
(因为它们应该是通用的,所以不会出现)。
我认为@khelwood说得很好(请参见原始问题的评论):这是在说:“在以下定义中,I和O代表某些类型,这些类型取决于调用该方法时的情况。”
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句