介绍
建造者模式(Builder)核心目的是通过使用多个简单对象一步步构建出一个复杂对象。通过将复杂对象的构造过程拆分为多个简单的步骤,使得创建对象更加灵活,可读性和可维护性更强。
使用场景
- 创建一个由多个部分组成的复杂对象,需要遵循特定顺序创建对象
- 相同的构建过程可以创建不同的对象表现(类似构造器重载)
- 不影响代码原来的功能情况下,方便扩展新的组成部分
建造者模式组成部分
- 产品(Product):表示最终要构建的复杂对象
- 建造者(Builder):定义用于构建产品的接口,包含创建产品各个部分的方法
- 具体建造者(Concrete Builder):实现Builder接口,完成产品各个部分的具体构建工作。
- 指挥者(Director):负责调用合适的建造者方法,按照特定顺序组装产品。
代码案例
在这个示例代码中,我们有一个Pizza
类,它有4个属性:面团、酱料、奶酪和配料。我们使用内部类Builder
来构建Pizza
实例。
public class Pizza {
private String dough;
priva