工厂类模式设计的是单个类的创建模式,本文将要讲述的建造者模式则是,用来创建复合对象,即某几个类众多具有不同属性的对象的组合。
其具休技术是使用List 寄存一组实现了相同接口的类对象。
代码如下:
public class Builder { public List<Connector> getmList() { return mList; } public void setmList(List<Connector> mList) { this.mList = mList; } private List<Connector> mList = new ArrayList<Connector>(); public void produceBluetooch(int count) { for (int iCount = 0; iCount < count; iCount++) { Connector connector = new Bluetooch(); //connector.setProperty(); mList.add(connector); } } public void produceHttprequest(int count) { for (int iCount = 0; iCount < count; iCount++) { Connector connector = new Httprequest(); //connector.setProperty(); mList.add(connector); } } }
测试类代码:
public class WorkClass { public void test() { Builder builder =new Builder(); builder.produceHttprequest(6);//创建6条并发的Httprequest } }
建造者模式将众多功能类集中到一个类中,其与工厂模式主要区别在于,工厂重心在于创建单种产品,而建造者重点在于创建复合对象,多个功能组合部分。
选择工厂模式还是建造者模式,要依具体情况而定。