就是将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象。
角色:
实体类(Model)public class Model(){方法}
抽象建造者(Builder)public interface Builder{ public abstract void one();}
具体建造者(RealBuilder)实现抽象建造者的抽象方法public abstract class BuildOne implements Builder{public abstract void one();}
导演者(Director)调用具体建造者来创建产品对象public class Director{ private BuildOne bo= new BuildOne(); public Model shixian(){具体实现}}
产品角色(Product),这就是要建造的对象
什么情况下使用建造模式
1、需要生成的产品对象有复杂的内部结构
2、需要生成的产品对象的属性相互依赖
3、在对象创建过程中会使用到系统中的其他一些对象,这些对象在产品的创建过程中不容易得到。