【发布时间】:2020-06-13 15:17:08
【问题描述】:
我有一个类“A”,它有两个类“BC”和“BD”的对象的两个数组列表。 BC 和 BD 继承自抽象类“B”。
所以我正在努力做的是,我想做一个 add();该方法以B对象为参数,如果参数为BC类型,则添加BC对象,如果参数为BD类型,则添加BD对象。有没有正确的方法可以做到这一点,或者我应该单独添加方法?
public class A
{
private ArrayList<BC> bcArrayList= new ArrayList<>();
private ArrayList<BD> bcArrayList= new ArrayList<>();
public void add(ArrayList<B> bArrayList)
{
//m = create new object of type, either BC or BD;
bArrayList.add(m);
}
}
【问题讨论】:
-
我不明白你的例子,参数是一个列表,你添加一个对象而不是添加到一个实例变量?
-
对不起,这个例子不清楚,我只想不使用两种添加方法,一种用于 bcArrayList,一种用于 bdArrayList,而是我想将这些数组之一传递给一种添加方法并获得工作完成。
标签: java polymorphism aggregation