【发布时间】:2012-10-03 09:35:42
【问题描述】:
我对以下两个方法声明感到困惑:
private <U, T extends U> T funWorks(T child, U parent) {
// No compilation errors
}
private <T, U super T> T funNotWorks(T child, U parent) {
// compilation errors
}
以上两个都不应该有效吗?类比 如果 U 是 T 的父级,则 T 是 U 的子级。那为什么第二个会出现编译错误呢?
编辑::
我认为,T extends T 和 T super T 都是有效的。对吧?
【问题讨论】:
-
我怀疑
T extends U表示T >= U其中U super T表示U < T,但我可能是错的...... -
你应该看看this thread
-
@DayS:差不多? - 任何事物。我明白那个。但是如果是 T 和 U 呢?
标签: java generics collections type-parameter