- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在下面的 Java 代码中,我创建了一个列表 nums
。我可以在声明期间分配另一个列表。但是除了null
之外不能添加新项目。那么,这是否意味着 nums
是只读的? 为什么?是否可以在该列表中添加新项目?
List<Integer> ints = new ArrayList<Integer>();
ints.add(1);
ints.add(2);
List<? extends Number> nums = ints;
nums.add(3.14); //Generates error
nums.addAll(ints); //Generates error
nums.add(null); //works
System.out.println(nums.get(0)); //works
我已经完成了这个link .我无法得到确切的原因。
最佳答案
Is it possible to add new items in that list?
不...因为该代码不知道它“实际上”是什么列表。想象一下,如果您可以:
List<String> strings = new ArrayList<>();
List<? extends Object> objects = strings; // This is fine
objects.add(new Object()); // Fortunately this *isn't* valid...
System.out.println(strings.get(0).length()); // Or what would this do?
基本上,当您使用像 这样的通配符时? extends T
您只能通过 API 获取值 out...并且当您使用像 这样的通配符时? super T
,您只能通过 API 将值放入 - 因为那是安全的。
关于java - "? extends ParentClass"使只读?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32614436/
据我了解,这是在 C++ 中子类化的唯一方法: class ParentClass { ... } class ChildClass : public ParentClass { ..
在下面的 Java 代码中,我创建了一个列表 nums。我可以在声明期间分配另一个列表。但是除了null 之外不能添加新项目。那么,这是否意味着 nums 是只读的? 为什么?是否可以在该列表中添加新
来自下面的 Java 代码。 ParentClass.this.a 的 TypeScript 等价物是什么 class ParentClass{ int a = 1; class Childr
我是 C# 的新手,我正在开发一个 rpg 游戏引擎。 我有我的基类 Item,它是 Weapon 和 Armour 的父类,武器和盔甲类有额外的变量,用于统计、武器插槽、盔甲类型等。 我的 Play
public class InheritanceDemo { public static void main(String[] args) { ParentClass p =
这个问题在这里已经有了答案: Understanding CSS selector priority / specificity (4 个答案) 关闭 4 年前。
我有几个名为“ParentClass”的类,对于每个父类,我想为任何具有“ParticularClass”类的内部 html 标签修改 css。你如何在 jQuery 中做到这一点? ...
我有课本上的代码: public class Question_3_4 { public static class Inner { private void doIt() {
我有一个这样组织的照片库: .container %li %a{src: image.src} %li %a{src: image.src} %li %a{src:
我正在尝试创建自己的编程语言。该语言的虚拟机 将使用一个数据堆栈,所有对象都将被插入和弹出。 现在,显然,std::stack只允许将相同类型的元素插入其中,因此我创建了一个非常通用的 Obj类将成为
简单的例子: public class Person { String name; } public class VIP extends Person { String title;
我想在我的应用程序中使用 UITableViewCells,它有一个图像,并且该图像是异步下载的。为了实现这一点并确保我不必在我的应用程序中多次编写相同的代码,我将 UITableViewCell 子
它与我正在参与的技术讨论相关。 最佳答案 你说的是 generic covariance - 但不适用于 List ,这是不变。 它确实适用于IEnumerable虽然: IEnumerable ch
我必须将一个 rdd 与其类型相匹配。 trait Fruit case class Apple(price:Int) extends Fruit case class Mango(price:Int
我想知道在从另一个扩展的类中创建对象的这两种方法之间是否存在任何功能差异。 我只是在处理基本的继承,除了 Cat extends Mammal 之类的东西之外没有什么复杂的。 最佳答案 ParentC
当一个类继承自单个类时,调用父方法的首选方式是什么?我知道有两种调用父方法的方法。 选项 1: ParentClass.method(self, *args, **kwargs) 选项 2: supe
我是一名优秀的程序员,十分优秀!