我可以在下面的示例中实现Car类。我可以通过带有轮到品牌映射的集合,但是有更好的方法吗?
汽车具有引擎和一定数量的车轮。并非所有汽车都能容纳四个轮子,有些只有三个,而其他则更多。但是不管它们是为什么建造的,这就是它们可以容纳的最大数量。建造(即建造)汽车时,会为其制造引擎以及将要使用的车轮。
最佳答案
public class Car
{
private Engine e;
private int numWheels;
private List<Wheel> wheels;
public Car(Engine e, int numWheels, ...)
{
this.e = e;
this.numWheels = numWheels;
this.wheels = new ArrayList<>();
for(int i = 0; i < this.numWheels; i++)
{
this.wheels.add(new Wheel(...));
}
}
}
只需添加一个整数即可保存此Car对象可以拥有的车轮数。然后在构造函数中循环并添加这些轮子