【发布时间】:2021-01-31 03:35:18
【问题描述】:
我仍然在研究泛型,因此我们将不胜感激。
【问题讨论】:
-
你能在 JDK 或第三方库中分别举一个例子吗?
我仍然在研究泛型,因此我们将不胜感激。
【问题讨论】:
在这两种情况下,返回类型都是T。
如果您之前看到<T>,则表示泛型类型T已在方法级别定义:
<T extends JustAnExample> T getThatThing() {
// ...
}
如果不是,那么它可能已经在类级别定义:
class MyClass<T extends JustAnExample> {
T getThatThing() {
// ...
}
}
或者,从技术上讲,它也可以只是一个名为 T 的类,尽管这些单字母类型通常指的是泛型(纯粹按照惯例):
class MyClass {
T poorlyNamedTypeYuck() {
// ...
}
}
请注意,您不必使用T 作为返回类型:
<T> void thisIsAlsoValid(T genericUsedHere, List<T> orElseWhere) {
// ...
}
【讨论】: