一个类可以有多个参数数目不同的构造函数。
构造函数中的setter方法可用于设置属性值。
例子:
public class Vehicle {
private String color;
Vehicle() {
this.setColor("Red");
}
Vehicle(String c) {
this.setColor(c);
}
// Setter
public void setColor(String c) {
this.color = c;
}
}
上面的类有两个构造函数,一个没有任何参数将color属性设置为默认值"Red",另一个构造函数接受一个参数并将其分配给该属性。
现在,我们可以使用构造函数创建类的对象。
// 颜色会是"红色"
Vehicle v1 = new Vehicle();
// 颜色将是"绿色"
Vehicle v2 = new Vehicle("Green");
Java自动提供一个默认的构造函数,所以所有类都有一个构造函数,不管是否有一个被特别定义。