用于收集对象的类

时间:2014-05-10 09:24:44

标签: java oop

如果我有一个班级Car,并且还希望维护一个Car个对象的列表,那么创建一个复数类Cars会更好,还是一个很好的做法Car类中的静态方法包含Car的列表?

class Car {
    private String model;
    private String color;
    ...
    private static ArrayList<Car> cars = new ArrayList<Car>();

    ...
    public Car {
        ...
        Car.cars.add(this);
    }
}

1 个答案:

答案 0 :(得分:3)

通常,您希望您的类包含基本方法和属性,而不知道谁将使用它。 一类汽车不应该知道应用逻辑;因此,没有必要知道你需要一个汽车清单。而且,想象一下你需要将这个类重用于需要汽车地图或其他汽车集合的另一个应用程序,为什么要携带这个不需要的列表呢?

在你的情况下,我将应用程序逻辑与类逻辑分开,并在一个确实需要它的单独类中创建List。