複雜對象建立終結者(Builder Pattern)

搗鼓了很長時間,終於對建造者模式有初步理解,如今寫篇記錄下。緣起就是建立的對象比較複雜,需按功能分散。相似造一輛汽車,做爲汽車廠家,你須要造車身,造輪胎等,精髓在於領導者(Director),領導者指揮各個部門運行,而後向客戶提交整車。css

構建模式

將一個複雜對象的搭建與他的表示分離,使得一樣的構建過程能夠建立不一樣的表示.html

UML:

小Q截圖-20131130222554

Director:

   1:  public class PersonDirector {
   2:      public Person constructPerson(PersonBuilder pb){
   3:          pb.buildeHead();
   4:          pb.buildeBody();
   5:          pb.buildeFoot();
   6:          return pb.buildePerson();
   7:      }
   8:  }

代碼:

 

   1:  public static void main(String[] args) {
   2:              PersonDirector pd=new PersonDirector();
   3:              Person person=pd.constructPerson(new ManBuilder());
   4:              System.out.println(person.getHead()+","+person.getBody()+","+person.getFoot());
   5:              Person womanPerson=pd.constructPerson(new WomanBuilder());
   6:              System.out.println(womanPerson.getHead()+womanPerson.getBody()+womanPerson.getFoot());
   7:  //            男人頭,男人身體,男人的腳啊
   8:  //            女人的頭女人的身體女人的腳
   9:          }
相關文章
相關標籤/搜索