Builder模式是一种提供逐步构建复杂对象的方法,并明确分离对象创建和表示的创建者模式。在该模式中,我们将创建对象的过程分解成多个简单的步骤,并提供一个具有相同步骤的接口,以便在创建复杂对象时可以灵活地使用。这样,我们就可以轻松地实现对象创建的变化,以备不时之需。
Builder模式中有两种主要的方法来实现构建者设计模式。
第一种方法是使用静态内部类。以下是该方法的示例代码:
public class Car {
private String make;
private String model;
private int year;
private Car(CarBuilder builder) {
this.make = builder.make;
this.model = builder.model;
this.year = builder.year;
}
public String getMake() {
return make;
}
public String getModel() {
return model;
}
public int getYear() {
return year;
}
public static class CarBuilder {
private String make;
private String model;
private int year;
public CarBuilder make(String make) {
this.make = make;
return this;
}
public CarBuilder model(String model) {
this.model = model;
return this;
}
public CarBuilder year(int year) {
this.year = year;
return this;
}
public Car build() {
return new Car(this);
}
}
}
在上面的代码示例中,我们定义了一个Car类和其静态内部类CarBuilder。我们使用CarBuilder在多步骤中构建Car对象。然后,我们在Car类中定义一个私有构造函数,该构造函数接受CarBuilder对象并使用其参数构建Car对象。在CarBuilder中,我们使用流畅的接口