建造者模式(Builder pattern)是一种设计模式,它提供了一种构建对象的最佳方式。这种模式通常用于将一个对象的内部表示与其外部表示分离,使得同样的构建过程可以创建不同的表示。
在建造者模式中,我们创建了一个建造者类,该类负责构建一个或多个相关的对象。建造者类提供了一种明确的接口,通过这个接口可以逐步构建复杂的对象。这种模式的主要优点是,它允许我们独立于表示对象的部分的顺序和数量来构建对象。
以下是一个简单的建造者模式示例:
public class Car {
private String color;
private String model;
private boolean hasAirConditioner;
private boolean hasGPS;
private Car(Builder builder) {
this.color = builder.color;
this.model = builder.model;
this.hasAirConditioner = builder.hasAirConditioner;
this.hasGPS = builder.hasGPS;
}
public static class Builder {
private String color;
private String model;
private boolean hasAirConditioner;
private boolean hasGPS;
public Builder setColor(String color) {
this.color = color;
return this;
}
public Builder setModel(String model) {
this.model = model;
return this;
}
public Builder hasAirConditioner(boolean hasAirConditioner) {
this.hasAirConditioner = hasAirConditioner;
return this;
}
public Builder hasGPS(boolean hasGPS) {
this.hasGPS = hasGPS;
return this;
}
public Car build() {
return new Car(this);
}
}
}
在上面的例子中,Car
类是我们要构建的复杂对象。我们通过Builder
类来逐步构建这个对象,可以设置汽车的各个属性,例如颜色、型号、是否带空调和是否带GPS等。然后,我们使用Builder
的build()
方法来创建并返回一个完整的Car
对象。这样,我们就可以根据需要创建具有不同属性和配置的汽车对象。
为您推荐与 设计模式 相关的帖子:
暂无回复。