本文共 1502 字,大约阅读时间需要 5 分钟。
建造者模式(Builder),将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
该程序主要通过组装电脑的功能实现。
1、定义组装过程(Builder)
public abstract class Builder { //第一步:装CPU public abstract void buildCPU(); //第二步:装主板 public abstract void buildMainboard(); //第三步:装硬盘 public abstract void buildHD(); //返回产品的方法:获得组装好的电脑 public abstract Computer getComputer();}
2、具体建造者
public class ConcreteBuilder extends Builder { Computer computer; public ConcreteBuilder(){ computer = new Computer(); } @Override public void buildCPU() { computer.add("CPU"); } @Override public void buildMainboard() { computer.add("主板"); } @Override public void buildHD() { computer.add("硬盘"); } @Override public Computer getComputer() { return computer; }}
3、指挥者Director
public class Director { //指挥装机人员组装电脑 public void construct(Builder builder){ builder. buildCPU(); builder.buildMainboard(); builder.buildHD(); }}
4、产品Product
public class Computer { private Listparts = new ArrayList<>(); public void add(String part){ parts.add(part); } public void show(){ for (int i = 0;i
5、测试
public class Test { public static void main(String[] args) { // Director director = new Director(); Builder builder = new ConcreteBuilder(); director.construct(builder); Computer computer = builder.getComputer(); computer.show(); }}
注:参考文献《大话设计模式》程杰著。