通用扩展不能添加相同的类型

通用扩展不能添加相同的类型,第1张

通用扩展不能添加相同的类型

因为与此处无关的不是运行时类型。

list
仍然是类型
List<? extends String>
,您刚巧将其分配给
newArrayList<String>()
。考虑一下:

list = rand() ? new ArrayList<String>() : new ArrayList<NotString>();

编译器无法确定其是否

list.add("test")
有效-它仅基于的编译时类型进行决策
list

请注意,实际上没有任何扩展

String
,这是一个
final
类。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5507478.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-13
下一篇 2022-12-13

发表评论

登录后才能评论

评论列表(0条)

保存