建造者模式 角色定位 Product:产品 一个具体的产品对象 Builder:抽象建造者 产品对象的各个部件的接口或抽象类 ConcreteBuilder:建造者 实现接口,构建和装配部件 Director:指挥者 隔离用户调用对象的生产过程,负责实际生产 类图 Product «abstract» Builder +buildPartA() +buildPartB() +buildPartC() +getResult() Director + builder : Builder +construct() ConcreteBuilder +buildPartA() +buildPartB() +buildPartC() +getResult() 源码 StringBuilder 角色分析 Appendable:抽象建造者AbstractStringBuilder:已经是建造者(不能实例化)StringBuilder:指挥者,具体的建造者,方法的实现由AbstractStringBuilder实现