【发布时间】:2015-09-03 17:34:08
【问题描述】:
又一个 Java Generics unchecked cast 问题出现了:
我们有类似以下的内容:
public abstract class A<T extends A> {
public final T doSomething() {
return (T)this; //unchecked cast A<T> to T
}
}
那么,这种未经检查的演员阵容是我们可以压制的,还是真的有可能失败的情况?
【问题讨论】:
-
类声明不应该是`A
>? -
我对“自我类型”的看法 - stackoverflow.com/questions/30382847 - 对于这类问题还有一个“纯粹”的解决方案,
getThis- stackoverflow.com/questions/31323115 -
如果您搜索(F-)Bounded quantification,您可能会发现更多。
-
@awksp 是的,它可能应该这样做,但我认为它并不是真正需要的,它只会让我更加困惑。
-
@Tom 非常感谢!真的不知道如何搜索这个。