【发布时间】:2010-10-06 14:59:20
【问题描述】:
简单的 Java 泛型问题:我有两个类 - 其中一个使用泛型定义其类型,另一个扩展此类提供具体类型。
public class Box<Item> {
...
}
public class Toolbox extends Box<Tool>{
...
}
鉴于 Toolbox 扩展了 Box 提供了一个 Tool 作为通用占位符的实际类型,我原以为应该可以做这样的事情:
Box<Tool> box = new Box();
Toolbox toolbox = box;
但是,这似乎会导致类型不匹配。这是为什么呢?
【问题讨论】:
标签: java generics inheritance type-mismatch