【发布时间】:2016-01-14 08:15:50
【问题描述】:
我有一个正在开发数据模型的应用程序(该应用程序处理新旧数据)。 现在我想用原始返回类型的演变来覆盖方法的返回类型:
public interface Section {
List<Item> getItems();
}
public interface Item {
String getName();
}
public interface ItemEvolution extends Item {
String getEvolution();
}
public interface SectionEvolution extends Section {
List<ItemEvolution> getItems();
}
在这个星座中,我在 getItems() 处得到一个不兼容的返回类型,但我没有破坏父接口,因为 ItemEvolution 扩展了 Item。
我该如何处理?
我正在使用 Java 8
【问题讨论】:
-
使用通配符 --
List<? extends Item> -
没有重复 - 我看到那个帖子
标签: java inheritance