gpt4 book ai didi

java - Java 语法

转载 作者:搜寻专家 更新时间:2023-10-31 08:15:16 25 4
gpt4 key购买 nike

这段代码:

List<? extends Reader> weirdList;
weirdList.add(new BufferedReader(null));

编译错误为

The method add(capture#1-of ? extends Reader) in the type List is not applicable for the arguments (BufferedReader)

为什么? BufferedReader 扩展了阅读器,那为什么不“匹配”呢?

最佳答案

List<? extends Reader> weirdList可以引用任何类型的 List存储任何类型的 Reader .所以有可能

List<? extends Reader> weirdList1 = new ArrayList<BufferedReader>();
List<? extends Reader> weirdList2 = new ArrayList<FileReader>();

如果 Java 允许您添加 BufferedReaderweirdList1它还必须让您添加 BufferedReaderweirdList2 (引用类型相同)自 weirdList2 以来不应该发生应该只存储 FileReader

关于java - <?扩展 > Java 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15775464/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com