Java泛型练习 - 答案解释

时间:2016-10-22 09:20:42

标签: java generics

在官方Java文档中,有一些练习在泛型章节结尾处有答案。我能够解决最多,但一个答案对我来说并不清楚。您可以找到问题和答案here。我不明白问题8的答案。他们为什么要写

<T extends Object & Comparable<? super T>>

我写了

<T extends Comparable<? super T>>

并且不知道为什么扩展Object是必要的或更好的。

1 个答案:

答案 0 :(得分:1)

我不得不三思而后行。原因如下:

如果你写了

<T extends Comparable<? super T>>

这意味着您的T必须延伸 Comparable。你想要的是实施 Comparable

为了做到这一点,你必须让它扩展一个类,然后确定必须实现哪些接口。

由于您不需要任何特殊类,因此必须扩展Object,一旦完成,您就可以精确地实现哪个接口。

语法:

<T extends ClassToExtend & InterfaceToImplement>