设计模式(四):建造者模式

基本介绍

建造者模式(Builder Pattern)又叫生成器模式,是一种对象构建模式

它可以将复杂对象的建造过程抽象出来(抽象类别),使这个抽象过程的不同实现方法可以构造出不同表现(属性)的对象

建造者模式是一步一步创建一个复杂的对象,它允许用户只通过制定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构建细节

四个角色

产品

一个具体的产品对象

抽象建造者

创建一个Product对象的各个部件指定的接口/抽象类

具体建造者

实现接口,构建和装配各个部件

指挥者

构建一个使用Builder接口的对象。它主要是用于创建一个复杂的对象

它主要有两个作用,一是隔离了客户与对象的生产过程;二是负责控制产品对象的生产过程

实际应用方式

以构建“Computer”类实例举例:

1.在Computer 中创建一个静态内部类 Builder,然后将Computer 中的参数都复制到Builder类中

2.在Computer中创建一个private的构造函数,参数为Builder类型

3.在Builder中创建一个public的构造函数,参数为Computer中必填的那些参数,cpu 和ram

4.在Builder中创建设置函数,对Computer中那些可选参数进行赋值,返回值为Builder类型的实例

5.在Builder中创建一个build()方法,在其中构建Computer的实例并返回

在客户端使用链式调用,一步一步的把对象构建出来

JDK应用场景—StringBuilder

参考资料

秒懂设计模式之建造者模式(Builder pattern) - 知乎

设计模式之【建造者模式】 - 知乎

你可能感兴趣的:(设计模式(四):建造者模式)