【发布时间】:2011-05-12 15:52:59
【问题描述】:
在 java 中,我有一个包含以下内容的数组列表
List<IMyInterface>
我在函数中返回它
List<? extends IMyInterface> getList()
现在我想做以下事情
getList().add(MyElement)
MyElement 扩展接口的地方。
我得到的是一个编译错误,该方法期待其他东西。
在这里:
在列表中添加 (capture ) 不能应用于 (MyElement)。
。虽然 MyElement 扩展了 IMyInterface
顺便说一句:粗体字 Capture 是什么? 谢谢。
【问题讨论】:
-
getList的返回类型是否缺少List?
-
是的。对不起。我的抄袭不好。固定的。并感谢您的通知。问题仍然存在。
-
约翰。这个链接真的很棒。 John skeet 在他的评论中只是回答了我的问题。只是我不明白:0)。为什么那样工作不安全?