可配置的建造模式的Java代码
时间: 2024-01-22 16:19:26 浏览: 23
以下是一个可配置的建造模式的Java代码示例:
```
public class Car {
private String make;
private String model;
private int year;
private int numDoors;
private String color;
private Car(CarBuilder builder) {
this.make = builder.make;
this.model = builder.model;
this.year = builder.year;
this.numDoors = builder.numDoors;
this.color = builder.color;
}
public String getMake() {
return make;
}
public String getModel() {
return model;
}
public int getYear() {
return year;
}
public int getNumDoors() {
return numDoors;
}
public String getColor() {
return color;
}
public static class CarBuilder {
private String make;
private String model;
private int year;
private int numDoors;
private String color;
public CarBuilder(String make, String model, int year) {
this.make = make;
this.model = model;
this.year = year;
}
public CarBuilder numDoors(int numDoors) {
this.numDoors = numDoors;
return this;
}
public CarBuilder color(String color) {
this.color = color;
return this;
}
public Car build() {
return new Car(this);
}
}
}
```
在上面的代码中,Car类是我们要创建的类。它有一个私有构造函数,该构造函数使用CarBuilder类中设置的值初始化实例变量。CarBuilder是一个静态内部类,用于构建Car对象。它有一个公共构造函数,该构造函数接受必需的参数(制造商,型号和年份),然后提供可选的方法来设置其他属性,例如numDoors和color。最后,build方法返回一个新的Car对象,该对象由CarBuilder类配置。