多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內(nèi)最全I(xiàn)T社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁 > php開源 > php教程 > Java之建造者模式(Builder Pattern)

Java之建造者模式(Builder Pattern)

來源:程序員人生   發(fā)布時間:2017-02-07 09:05:36 閱讀次數(shù):3265次

1.概念

    將1個復(fù)雜的構(gòu)建與其表示相分離,使得一樣的構(gòu)建進(jìn)程可以創(chuàng)建不同的表示。 [構(gòu)建與表示分離,同構(gòu)建不同表示]

    與抽象工廠的區(qū)分:在建造者模式里,有個指點(diǎn)者,由指點(diǎn)者來管理建造者,用戶是與指點(diǎn)者聯(lián)系的,指點(diǎn)者聯(lián)系建造者最后得到產(chǎn)品。即建造模式可以強(qiáng)迫實(shí)行1種分步驟進(jìn)行的建造進(jìn)程。

  建造模式是將復(fù)雜的內(nèi)部創(chuàng)建封裝在內(nèi)部,對外部調(diào)用的人來講,只需要傳入建造者和建造工具,對內(nèi)部是如何建造成成品的,調(diào)用者無需關(guān)心。

  舉個簡單的例子,如汽車,有很多部件,車輪,方向盤,發(fā)動機(jī)還有各種小零件等等,部件很多,但遠(yuǎn)不止這些,如何將這些部件裝配成1部汽車,這個裝配進(jìn)程也很復(fù)雜(需要很好的組裝技術(shù)), builder模式就是為了將部件和組裝分開。

2.UML圖

3.代碼

復(fù)制代碼
    public interface Builder { 
    void buildPartA(); 
    void buildPartB(); 
    void buildPartC(); 
  
    Product getResult(); 
  } 

   //具體建造工具
  public class ConcreteBuilder implements Builder { 
    Part partA, partB, partC; 

    public void buildPartA() {
      //這里是具體如何構(gòu)建partA的代碼
    }; 
    public void buildPartB() { 
      //這里是具體如何構(gòu)建partB的代碼
    }; 
     public void buildPartC() { 
      //這里是具體如何構(gòu)建partB的代碼
    }; 
     public Product getResult() { 
      //返回最后組裝成品結(jié)果
    }; 
  }

   //建造者
  public class Director {
    private Builder builder; 
  
    public Director( Builder builder ) { 
      this.builder = builder; 
    } 
    public void construct() { 
      builder.buildPartA();
      builder.buildPartB();
      builder.buildPartC(); 
    } 
  } 


  public interface Product { }
  public interface Part { }
  
復(fù)制代碼
    下面是調(diào)用builder的方法:
  ConcreteBuilder builder = new ConcreteBuilder();
  Director director = new Director( builder ); 
  
  director.construct(); 
  Product product = builder.getResult();

4.利用場景

在Java的利用中JavaMail使用到了該模式。

學(xué)習(xí)Java的同學(xué)注意了!!! 
學(xué)習(xí)進(jìn)程中遇到甚么問題或想獲得學(xué)習(xí)資源的話,歡迎加入Java學(xué)習(xí)交換群,群號碼:183993990  我們1起學(xué)Java!

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: jizz性欧美| 黄色免费网站大全 | 91av在线免费观看 | 日韩国产欧美成人一区二区影院 | 欧美一区二区三区影院 | 伊人影院综合 | 中文版在线乱码在线看 | 免费精品久久久视频 | 日本不卡高清中文字幕免费 | 国产suv精品一区二区四区三区 | 中文字幕第23页 | 精品中文字幕在线 | 免费va欧美在线观看 | 亚洲福利 | 久久国产精品成人免费 | 一级毛片在线完整观看 | 国产精品11页 | 欧美精品专区第1页 | 免费黄色的网站 | 韩国一级做a爰片性色毛片 韩国在线观看免费观看影院 | 一二三四视频免费观看在线看 | 最新国产在线观看福利91 | 春色精品视频在线播放 | 男女激情视频软件 | 久久国产一区二区三区 | 欧美一级毛片高清视频 | 欧美亚洲一区二区三区 | 久久精品一区二区三区四区 | 国产精品系列在线 | 2021国产精品一区二区在线 | 黄色福利网 | 最近中文字幕免费版在线3 最近中文字幕免费大全8高清 | 欧美日韩一区二区三区视频播 | 欧美一级毛片100部 欧美一级毛片不卡免费观看 | 亚洲最大色视频 | 最近最新中文字幕大全免费7 | 欧美a级v片不卡在线观看 | 亚洲黄色免费网址 | 在线精品自拍亚洲第一区 | 亚洲www网站 | 性欧美一级毛片 |