java - Java 父类(super class)数组中的子类

标签 java casting arraylist

<分区>

Possible Duplicate:
Is List&lt;Dog&gt; a subclass of List&lt;Animal&gt;? Why aren't Java's generics implicitly polymorphic?

我有这个代码:

ArrayList<A> objects = new ArrayList<A>();

objects.add(new B());

其中 BA 的子类。它给了我这样的编译时错误:

类型 ArrayList 中的方法 add(A) 不适用于参数 (B)

最佳答案

编译并运行良好:

import java.util.ArrayList;

class A {
}

class B extends A {
}

class Test {
    public static void main(String[] args) {
        ArrayList<A> arraylist = new ArrayList<A>();
        arraylist.add(new B());
    }
}

再看看你的代码。也许你把它弄反了,A extends B

关于java - Java 父类(super class)数组中的子类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12133530/

相关文章:

java - 从 arraylist 获取组作为列表

java - TextureView.getBitmap() 函数是否有任何快速替代方案?

java - doInBackground 卡住了

java - 何时使用 getInstanceOf 而不是构造函数

Java Applet - 使用浏览器下载文件

c++ - 在 C++ 中将非 const 转换为 const

java - 将前几个元素分组在一起

c# - 在 C# 中将一个动态转换为另一个类型

c - 如何在 C 中将 uint8_t* 分配给 uint16_t

java - ArrayList<CustomObject> 无法添加对象