定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。

利用延迟加载技术,创建一个虚的构建者类,具体的建造者类继承并实现其具体的建造方法;基类可提供建造过程,也可由建造控制器角色来提供建造过程;

好处

  1. 客户端不需要知道具体的建造是如何进行的,建造者知道既可;
  2. 使用反射技术,将具体的建造者类放到配置文件中,做到只修改配置文件,即可建造不同对象

坏处

  1. 明显的,被建造的类属性应该是有限可列举的,否则任何添加属性和行为,都会造成所有具体建造者类修改