是否可以创建扩展ArrayList的类的实例?
在下面的示例中,如何创建包含所有汽车数据的Cars类的实例?是否可以这样做,或者我是否必须移除继承并在Cars类中添加一个字段,如--> private List Car listCars?
public class Cars extends ArrayList<Car>{
public Cars() {}
}
public class Car {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
发布于 2018-12-06 05:31:47
您可以扩展ArrayList
,因为它不是最终类,并且有可见的构造函数可供调用。然而,在实践中,下面这样的一个should favor composition over inheritance会更可取:
public class Cars {
private final List<Car> values = new ArrayList<>();
public void add(Car c) {
values.add(c);
}
}
https://stackoverflow.com/questions/53641036
复制相似问题