概要
将一个复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。
建造者模式包含以下角色
- 抽象建造者类(Builder):这个接口规定要实现复杂对象的那些部分的创建,并不涉及具体的部件对象的创建。
- 具体建造者类(ConcreteBuilder):实现Builder接口,完成复杂产品的各个部件的具体创建办法,在构造过过程完成后,提供产品的实例。
- 产品类(Product):要创建的复杂对象。
- 指挥者类(Director):调用具体建造者来创建复杂对象的各个部分,在指导者中不涉及具体产品的信息,只保证对象各部分完整创建或按照某种顺序创建。
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/37bc80c2498e4f69a2128f9ebc68b71d.jpeg)
优缺点
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/65422e08ed8d4ae59178b2e7bafbc6fc.png)