定义
将一个复杂对象的构建与它的表示分离,是的同样的构建过程可以创建不同的表示
用户只需要指定建造的类型,同样可以创建复杂的对象
创建和使用分离
建造者模式和工厂模式相近
但建造者模式创造出来的对象是比较灵活的,而且方法的使用顺序是比较随意的
工厂模式创造的对象是固定好的
常用的建造者模式举例
lombok中的建造者模式
在实体类上加一个Builder注解即可
@Data
@Builder
public class Course {
private String name;
private String ppt;
private String video;
private String questionAnswer;
}
创建对象就可以使用链式编程
Course build = Course.builder()
.name("设计模式")
.ppt("设计模式ppt")
.build();
除此之外,还有Swaager的配置 StringBuilder 都算是建造者模式