这是两个类,乘客和汽车。我没有在所有构造函数中初始化Car类的所有私有成员,而是考虑为它们设置默认值,并覆盖实例创建者提供的特定成员的值。
import java.util.ArrayList;
class Passenger {
private String name;
Passenger(String name) {
this.name = name;
}
}
class Car {
private String color = "red";
private int numberOfWheels = 4;
private ArrayList<Passenger> passengers = new ArrayList<Passenger>();
Car() {}
Car(String color) {
this.color = color;
}
Car(int numberOfWheels) {
this.numberOfWheels = numberOfWheels;
}
public void addPassenger(Passenger p) {
this.passengers.add(p);
}
}
将默认值设置为这样的类成员是否安全?任何特定数据类型(甚至除了我使用的数据类型之外)都要避免任何陷阱?
答案 0 :(得分:0)
是的,这是安全的。 我个人更喜欢初始化声明在哪里是if所有构造函数的公共值。如果我有更多的构造函数不是很乐意多次写那个东西。对我来说更清楚的是什么价值。