本文内容摘自于大话设计模式_程杰版
一:建造者模式:
概念:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示的意图
时,就可以用到建造者模式。使用建造者模式是为了创建一个对象简单,其创建过程规范。
如创建Person人物的例子如图所有示:
(1)
(2)产品创建的例子:
具体代码如:
1 //product类-产品类 2 class Product{ 3 Listparts = new List (); 4 //增加产品 5 public void add(String part){ 6 parts.add(part); 7 } 8 public void show(){ 9 System.out.println(parts);10 }11 }12 //builder类——抽象建造者类13 abstract class Builder{14 public abstract void buildPartA();15 public abstract void buildPartA();16 public abstract Product getResult();17 }18 //ConcreteBuilder1类——具体建造者类19 class ConcreteBuilder1 extends Builder{20 private Product product = new Product();21 public void buildPartA(){22 product.add("部件A");23 }24 public void buildPartB(){25 product.add("部件B");26 }27 public abstract Product getResult(){28 return product;29 }30 }31 //ConcreteBuilder2类——具体建造者类32 class ConcreteBuilder2 extends Builder{33 ........34 }35 36 //Director--指挥者类37 class Director{38 public void construct(Builder builder){39 builder.builderPartA();40 builder.builderPartB();41 }42 }43 //客户端代码,44 Main(String args[]){45 Director director = new Director();46 Builder b1 = new ConcreteBuilder1();47 Builder b2 = new ConcreteBuilder2();48 director.construct(b1);49 director.construct(b2);50 Product product = b1.getResult();51 Product.show();52 .......53 }
二,代理模式: 参考: 三、模板模式:(参照shiro的afterSet方法)例如://TODO