【发布时间】:2016-06-28 04:11:36
【问题描述】:
我在创建一种方法以将扩展抽象类 (Ant_Abstract) 的对象添加到扩展 Ant_Abstract 的类型对象的 ArrayList 时遇到了一些麻烦。到目前为止,我有两种蚂蚁,Scouts 和 Workers(都扩展了 Ant_Abstract),我想使用 ArrayList 在 Anthill 文件中包含这两种蚂蚁。
当我尝试编译时:
import java.util.*;
class Anthill{
public ArrayList<? extends Ant_Abstract> occupants=new ArrayList(15);
Anthill(){
}
public<t extends Ant_Abstract> void enter(Class<t> ant){
occupants.add(ant);
}
}
它给了我错误:“ArrayList 类型中的方法 add(capture#1-of ? extends Ant_Abstract) 不适用于参数(类)
请帮忙。
【问题讨论】:
-
您尝试存储
Class而不是t,顺便说一句,通用占位符使用大写
标签: java arraylist abstract-class