日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

Builder设计模式

發(fā)布時(shí)間:2025/6/15 asp.net 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Builder设计模式 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>

Builder模式,又稱生成器或構(gòu)建者模式,屬于對(duì)象創(chuàng)建型模式,側(cè)重于一步一步的構(gòu)建復(fù)雜對(duì)象,只有在構(gòu)建完成后才會(huì)返回生成的對(duì)象。Builder模式將一個(gè)復(fù)雜對(duì)象的構(gòu)建與它的表示分離,使得同樣的構(gòu)建過程可以創(chuàng)建不同的表示。

使用場(chǎng)景

1、當(dāng)創(chuàng)建復(fù)雜對(duì)象的算法應(yīng)該獨(dú)立于該對(duì)象的組成部分以及它們的裝配方式時(shí),比如買一臺(tái)電腦,我不需要知道電腦CPU,主板,機(jī)箱是如何生產(chǎn)的,也不需要知道它們是如何組裝的。

2、當(dāng)構(gòu)造過程必須允許被構(gòu)造的對(duì)象有不同的表示時(shí),比如一臺(tái)電腦即可以使用AMD的CPU,也可以使用Inter的CPU,這些都是可以根據(jù)需求變化的。

/*** 構(gòu)建者模式:將一個(gè)復(fù)雜對(duì)象的構(gòu)建與它的表示分離, 使得同樣的構(gòu)建過程可以創(chuàng)建不同的表示。* * @author qbg* */ public class BuilderPattern {/*** 機(jī)箱抽象類*/abstract class Crate {public String toString() {return "abstract crate...";}}/*** 酷冷至尊機(jī)箱*/class CoolerMasterCrate extends Crate {public String toString() {return "CoolerMaster crate...";}}/*** CPU抽象類*/abstract class CPU {public String toString() {return "abstract cpu...";}}/*** AMD CPU*/class AMDCPU extends CPU {public String toString() {return "AMD cpu...";}}/*** 主板抽象類*/abstract class Motherboard {public String toString() {return "abstract motherboard...";}}/*** 華碩主板*/class ASUSMotherboard extends Motherboard {public String toString() {return "ASUS motherboard...";}}/*** 電腦定義類*/class Computer {CPU cpu; // cpuMotherboard motherboard; // 主板Crate crate;// 機(jī)箱public String toString() {return "CPU:" + cpu + "\nMotherboard:" + motherboard + "\nCrate:"+ crate;}}/*** 電腦構(gòu)建者接口,可以將CPU等部件通過工廠模式來生產(chǎn),以進(jìn)一步分離產(chǎn)品部件生成和構(gòu)建的過程...*/interface ComputerBuilder {public ComputerBuilder buildCPU();public ComputerBuilder buildMotherboard();public ComputerBuilder buildCrate();public Computer getProduct();}/*** 最熱臺(tái)式電腦構(gòu)建實(shí)現(xiàn)類*/class HotDeskComputerBuilder implements ComputerBuilder {private Computer computer;public HotDeskComputerBuilder() {this.computer = new Computer();}public ComputerBuilder buildCPU() {computer.cpu = new AMDCPU();return this;}public ComputerBuilder buildMotherboard() {computer.motherboard = new ASUSMotherboard();return this;}public ComputerBuilder buildCrate() {computer.crate = new CoolerMasterCrate();return this;}public Computer getProduct() {buildMotherboard().buildCPU().buildCrate();return computer;}}/*** 導(dǎo)向器,客戶端通過導(dǎo)向器獲取產(chǎn)品, 而不關(guān)心導(dǎo)向器是怎樣獲取到Builder生成器 構(gòu)建的產(chǎn)品對(duì)象的。而具體的構(gòu)建過程則交給具體的Builder。*/class Director {private ComputerBuilder builder;public Director(ComputerBuilder builder) {this.builder = builder;}/*** 返回構(gòu)造好的產(chǎn)品*/public Computer construct() {return builder.getProduct();}}public static void main(String[] args) {BuilderPattern bp = new BuilderPattern();ComputerBuilder builder = bp.new HotDeskComputerBuilder();Director director = bp.new Director(builder);Computer computer = director.construct();System.out.println(computer);} }

模式優(yōu)缺點(diǎn)

優(yōu)點(diǎn):

1、可以改變一個(gè)產(chǎn)品的內(nèi)部表示,比如示例中只要實(shí)現(xiàn)一個(gè)新的ComputerBuilder就能改變電腦的內(nèi)部組件,因?yàn)殡娔X的表示和內(nèi)部結(jié)構(gòu)是獨(dú)立于客戶端代碼的。

2、將構(gòu)造代碼和表示代碼分離,構(gòu)造代碼相當(dāng)于builder,表示代碼相當(dāng)于director。不同的導(dǎo)向器可以使用相同的生成器也構(gòu)造不同的產(chǎn)品。

轉(zhuǎn)載于:https://my.oschina.net/duanvincent/blog/775127

總結(jié)

以上是生活随笔為你收集整理的Builder设计模式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 男人天堂网在线观看 | 国产亚洲欧美一区二区三区 | 国产伦理在线 | 男人的天堂免费 | 亚欧激情 | 91丨porny丨国产入口 | 欧美日韩精品综合 | 夜夜爱爱 | 黄色永久免费网站 | 日韩一区二区三区精 | 免费a级片在线观看 | 午夜插插| 亚洲人xxx日本人18 | 男人和女人日b视频 | 欧美一区二区免费 | 欧美亚洲一区 | 一级免费a | 亚洲欧美校园春色 | 解开乳罩喂领导吃奶 | 操女人逼逼视频 | 久久短视频 | 欧美日韩一区二区三区不卡 | 香蕉视频A | 天天操国产 | 久久久久久久一区二区 | 高跟鞋av| 91成人在线免费观看 | 羞羞涩| 欧美成人午夜 | 不卡在线一区 | 国产又大又粗又硬 | 亚洲性猛交富婆 | 毛片aa | 久久久久久久91 | 日韩专区一区二区三区 | 欧美特级毛片 | 成人二三区 | 人人澡人人插 | 国产视频在线观看网站 | 色在线影院 | 实拍女处破www免费看 | 好吊妞视频这里只有精品 | 国产精品乱码 | 亚洲国产图片 | 综合色站导航 | 中文字幕在线看 | 最近中文字幕在线中文视频 | 亚洲免费成人在线 | 久久精品视频8 | www.youjizz日本| 成人黄色激情视频 | 18成人免费观看网站下载 | 四虎永久在线 | 久草青青视频 | 中国精品毛片 | 人妻激情偷乱视频一区二区三区 | 麻豆91茄子在线观看 | 99久久精品免费看国产交换 | 日本一区二区在线播放 | 欧美日韩一区在线观看 | 少妇视频在线观看 | 狠狠操夜夜 | 欧美狂猛xxxxx乱大交3 | 大桥未久av一区二区三区中文 | 免费看国产一级片 | 亚洲精品6 | 自拍偷拍视频在线 | 中文字幕精品亚洲 | 性欧美大战久久久久久久久 | 91全免费 | 国产99久久久久久免费看 | 欧美七区 | 91美女在线观看 | 午夜激情四射 | 波多野一区二区三区 | 8x8x成人 | 美女考逼| 美女一级黄 | www色| 欧美成人一区二区三区四区 | 麻豆爱爱视频 | 黄色a级片 | 国产亚洲精品久久久久久 | 欧美日韩在线视频免费 | 久久精品99久久久 | 亚洲国产精品影院 | 中国男女全黄大片 | 厕拍极品 | 超碰日日干 | 丁香婷婷视频 | 欧美日韩在线视频免费播放 | 先锋资源久久 | 日韩av中文在线 | 国产成人三级在线观看视频 | 狠狠欧美| 久久99精品久久久久久噜噜 | 黄色三级三级三级 | 在线看黄色的网站 | 最近免费中文字幕大全免费版视频 |