【发布时间】:2023-03-14 17:46:01
【问题描述】:
它是用java制作的,泛型不会自动从Generic<A>转换为Generic<SupeclassOfA>。
比如如果写一个方法
public static void printList(List<Object> list) {
for (Object elem : list)
System.out.println(elem + " ");
System.out.println();
}
它不会接受List<Integer>。我需要为List<?> 重写标题,尽管代码相同,但它会开始工作。
那么,为什么要这样做?
假设我重新设计了Java,使List<?> 的含义始终与List<Object> 相同。我会遇到什么问题?
【问题讨论】:
-
尝试在列表中添加一些东西。
-
这个问题在 SO 上被问了几十次。请先搜索现有问题。
标签: java generics type-conversion