【发布时间】:2016-11-02 02:01:10
【问题描述】:
Wildcards and Subtyping - Oracle Documentation
本文档有一个图表,显示了使用上限和下限通配符声明的几个 List 类之间的关系。关系如下图所示:
在右侧层次结构中,List<? super Number> 是List<? super Integer> 的子类型。是不是很混乱?
据我解释,List<? super Number> 可以用任何List<type> 表示,其中type 是Number 或Number 的超类。同样的逻辑也适用于List<? super Integer>。那么List<? super Number>怎么可能是List<? super Integer>的子类型呢?
【问题讨论】:
-
所以
List<? super Integer>是一个列表,其中type是Integer或Integer的超类。Number是Integer的超类吗? -
是的,Number 是 Integer 的超类
-
This 可能会有所帮助……
标签: java generics collections