




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第1頁/共47頁第一頁,共47頁。一二三四五六主要內(nèi)容第2頁/共47頁第二頁,共47頁。(一)(二)(三)(四)(五)第3頁/共47頁第三頁,共47頁。 星巴茲是以擴展迅速而聞名的咖啡店,其原始設(shè)計(shj)如下:(一) 概況(gikung)第4頁/共47頁第四頁,共47頁。(二) 飲料類第5頁/共47頁第五頁,共47頁。 很明顯(mngxin),設(shè)計了太多的類(二) 飲料類第6頁/共47頁第六頁,共47頁。 從Beverage類開始,添加實例(shl)變量(三) 調(diào)整(tiozhng)第7頁/共47頁第七頁,共47頁。 加入( jir)子類(三) 調(diào)整(tiozhng)第8頁/共47頁第八頁
2、,共47頁。(三) 調(diào)整(tiozhng)第9頁/共47頁第九頁,共47頁。(四) 效果(xiogu)第10頁/共47頁第十頁,共47頁。(四) 效果(xiogu)第11頁/共47頁第十一頁,共47頁。 設(shè)計原則五: 類應(yīng)該對擴展開放(kifng),對修改關(guān)閉。(五) 開放(kifng)關(guān)閉原則第12頁/共47頁第十二頁,共47頁。(五) 開放關(guān)閉(gunb)原則第13頁/共47頁第十三頁,共47頁。(一)(二)第14頁/共47頁第十四頁,共47頁。以飲料為主體,運行時以調(diào)料來“裝飾”飲料,例如,顧客想要摩卡和奶泡深焙咖啡:取一個深焙咖啡對象以摩卡對象裝飾它以奶泡對象裝飾它調(diào)用cost()方法
3、(fngf),并依賴委托將調(diào)料的價錢加上去。(一) 思路(sl)第15頁/共47頁第十五頁,共47頁。(二) 構(gòu)造(guzo)飲料訂單第16頁/共47頁第十六頁,共47頁。(二) 構(gòu)造飲料(ynlio)訂單第17頁/共47頁第十七頁,共47頁。(二) 構(gòu)造(guzo)飲料訂單第18頁/共47頁第十八頁,共47頁。(二) 構(gòu)造飲料(ynlio)訂單第19頁/共47頁第十九頁,共47頁。(一)(二)(三)第20頁/共47頁第二十頁,共47頁。(一) 定義(dngy) 裝飾者模式:動態(tài)地將責(zé)任加到對象身上(shn shng)。如果要擴展功能,裝飾者模式提供了比繼承更有彈性的替代方案。第21頁/共47
4、頁第二十一頁,共47頁。(二) 類圖第22頁/共47頁第二十二頁,共47頁。(三) 缺點(qudin) 有時在設(shè)計中加入大量的小類,變得不容易理解。 有的客戶端代碼依賴于特定的類型(這是個比較糟糕的習(xí)慣,違反了“針對接口編程,而不是針對實現(xiàn)編程”的設(shè)計原則),當(dāng)服務(wù)器端引入裝飾者模式時,客戶端就會出現(xiàn)(chxin)狀況。 裝飾者模式使得實例化組件的復(fù)雜度提升。 第23頁/共47頁第二十三頁,共47頁。(一)(二)第24頁/共47頁第二十四頁,共47頁。(一) 星巴茲飲料(ynlio)第25頁/共47頁第二十五頁,共47頁。 從Beverage類開始(kish)(二) 實現(xiàn)(shxin)第26頁
5、/共47頁第二十六頁,共47頁。 Beverage類很簡單( jindn),下面來實現(xiàn)CondimentDecorator調(diào)料類(二) 實現(xiàn)(shxin)第27頁/共47頁第二十七頁,共47頁。 編寫(binxi)飲料代碼(二) 實現(xiàn)(shxin)第28頁/共47頁第二十八頁,共47頁。 編寫飲料(ynlio)代碼(續(xù))(二) 實現(xiàn)(shxin)第29頁/共47頁第二十九頁,共47頁。 編寫(binxi)調(diào)料代碼(二) 實現(xiàn)(shxin)第30頁/共47頁第三十頁,共47頁。 編寫(binxi)測試代碼(二) 實現(xiàn)(shxin)第31頁/共47頁第三十一頁,共47頁。 RUN(二) 實現(xiàn)(sh
6、xin)第32頁/共47頁第三十二頁,共47頁。(二) 實現(xiàn)(shxin)第33頁/共47頁第三十三頁,共47頁。(一)(二)第34頁/共47頁第三十四頁,共47頁。(一) 典型(dinxng)實例第35頁/共47頁第三十五頁,共47頁。(二) 裝飾(zhungsh)java.io類第36頁/共47頁第三十六頁,共47頁。(一)(二)第37頁/共47頁第三十七頁,共47頁。(一) 編寫(binxi)自己的Java I/O裝飾者第38頁/共47頁第三十八頁,共47頁。(一) 編寫自己(zj)的Java I/O裝飾者第39頁/共47頁第三十九頁,共47頁。(二) 測試(csh)新的Java I/O裝飾者第40頁/共47頁第四十頁,共47頁。(二) 測試(csh)新的Java I/O裝飾者 RUN第41頁/共47頁第四十一頁,共47頁。第42頁/共47頁第四十二頁,共47頁??偨Y(jié)(zngji)1第43頁/共47頁第四十三頁,共47頁??偨Y(jié)(zngji)2第44
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 遵義醫(yī)科大學(xué)《產(chǎn)品交互設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 唐山工業(yè)職業(yè)技術(shù)學(xué)院《中醫(yī)四診技能》2023-2024學(xué)年第二學(xué)期期末試卷
- 河北東方學(xué)院《幼兒園教育環(huán)境創(chuàng)設(shè)》2023-2024學(xué)年第二學(xué)期期末試卷
- 做賬實操-代理記賬公司的利潤計算
- 入黨積極分子民主表
- 遼寧工程技術(shù)大學(xué)《男裝制版與工藝》2023-2024學(xué)年第二學(xué)期期末試卷
- 吉林航空職業(yè)技術(shù)學(xué)院《專題設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 焦作大學(xué)《新聞評論與體育》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東酒店管理職業(yè)技術(shù)學(xué)院《抽樣設(shè)計與推斷》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖北大學(xué)知行學(xué)院《結(jié)構(gòu)化學(xué)A》2023-2024學(xué)年第二學(xué)期期末試卷
- 清淤工程施工記錄表
- TCITSA 24-2022 基于ETC的高速公路自由流收費技術(shù)規(guī)范
- 2022年涉農(nóng)領(lǐng)域涉嫌非法集資風(fēng)險專項排查工作總結(jié)
- 起重裝卸機械操作工國家職業(yè)技能標準(2018年版)
- 叉車裝卸區(qū)域安全風(fēng)險告知牌
- 五年級下冊美術(shù)課件-第2課 新街古韻丨贛美版
- 秦荻輝科技英語寫作教程練習(xí)答案(共42頁)
- GB∕T 41168-2021 食品包裝用塑料與鋁箔蒸煮復(fù)合膜、袋
- 部編版語文一年級下冊繪本閱讀課-優(yōu)質(zhì)課件.pptx
- 新人教版九年級全一冊物理知識點填空題匯編
- 人教版五年級數(shù)學(xué)下冊每個單元教材分析(共九個單元)
評論
0/150
提交評論