Java 被以下数据类型所迷惑 List

Java 被以下数据类型所迷惑 List,java,generics,Java,Generics,List它是指实现列表的任何类与实现列表的任何类的实例的接口与扩展“ObservationInteger”的任何类的实例的接口它是一个对象的列表,它们都是扩展列表的类的实例。因为这些对象是列表的实例,每个对象碰巧包含一定数量的对象,这些对象都是扩展ObservationInteger的类的实例。它是一个事物列表。将其可视化为二维结构(行和列) ?扩展意味着它也适用于列表的任何子类型和ObservationInteger的任何子类型。基本上,它是一个扩展了列表的列表,其中包含扩展Observati

List它是指实现列表的任何类与实现列表的任何类的实例的接口与扩展“ObservationInteger”的任何类的实例的接口它是一个
对象的
列表
,它们都是扩展
列表的类的实例。
因为这些对象是
列表的实例,
每个对象碰巧包含一定数量的
对象
,这些对象都是扩展
ObservationInteger
的类的实例。它是一个事物列表。将其可视化为二维结构(行和列)


?扩展
意味着它也适用于列表的任何子类型和ObservationInteger的任何子类型。

基本上,它是一个扩展了
列表的
列表
,其中包含扩展
ObservationInteger
的任何内容的
列表。虽然不完全相同,但可能更容易像查看
列表那样查看它(这是一个限制性更强的版本,但可能有助于您理解它试图做什么)这是否意味着我假设一个类a扩展了ObservationInteger,然后我有另一个类B扩展了List,我将类a的实例存储在一个类B的实例中?然后所有这些都存储在另一个列表中,但是是的,您有一个
列表
,由
列表
组成,其中包含从
ObservationInteger
扩展而来的对象。如果我没记错的话,这也会导致无法向列表中添加任何新项目,但在本例中这是一个副作用;)所以我可以使用ObservationInteger类的实例来代替类A?是的,假设您可以实例化它。如果您要执行类似于
list.get(0).get(0)
(并假设它有有效值)的操作,它将返回一个
ObservationInteger
,因为这是它最多可以执行的操作了……我仍然无法理解整件事情。你能告诉我整个声明的意思吗?谢谢!连同MadProgrammer和其他评论,它现在更有意义了。
List<? extends List<? extends ObservationInteger>>