Java 为什么不扩展可比性<;?超级T>;包括T?含义包括可比<;T>;?

Java 为什么不扩展可比性<;?超级T>;包括T?含义包括可比<;T>;?,java,super,Java,Super,在类中,他们有以下方法 class CustomComponent<T extends Container> void descripbecomponentFrom,Java教程部分的一部分: 。。。下限通配符将未知类型限制为该类型的特定类型或超级类型。 (我的粗体字,强调他们的) 因此,匹配T extends Comparable的类集合是匹配T extends Comparable的类集合的子集,我相信“上述构造的要点是,如果您有类动物实现可比,并且类狗扩展了动物,约束将接受与

在类中,他们有以下方法

class CustomComponent<T extends Container>
void descripbecomponentFrom,Java教程部分的一部分:

。。。下限通配符将未知类型限制为该类型的特定类型或超级类型。

(我的粗体字,强调他们的)


因此,匹配
T extends Comparable
的类集合是匹配
T extends Comparable的类集合的子集,我相信“上述构造的要点是,如果您有
类动物实现可比
,并且
类狗扩展了动物
,约束将接受与所有
动物
可比的
,即使它与
不可比。也就是说,您不想阻止-
?super T
不应仅表示“T
的超类”,而是指“
T
或其任何超类”。您是否有指向该
describeComponent
方法文档的链接?这似乎是错误的(或者可能是乱七八糟的),但如果没有更多的上下文,就很难判断。日期:2012年1月20日打印ISBN-13:978-0-071-63360-4电子书ISBN-13:978-0-071-63361-1打印版:672本节内容:有界通配符到目前为止,您已经了解了有界类型和通配符。有界类型将泛型使用的类型限制设置为特定的类层次结构。通配符允许您替换泛型参数类型中允许的任何类型。在某些情况下,您可能需要设置泛型中使用的类范围的上限和下限。作为一个例子,请查看图12-1中的类层次结构。这很有意义,因此在您的示例中包括JTextField,但不包括JPasswordField,因为它扩展了JTextField。这更有意义,谢谢你的澄清。我认为他们对“超级”的定义还不清楚,这似乎更符合逻辑。非常感谢。
class CustomComponent<T extends Container>
void describeComponent<CustomComponent<? super JPasswordField> ref)
void describeComponent(CustomComponent<? super JTextField> ref) {...}