版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、設(shè)計(jì)模式設(shè)計(jì)模式Comm(命令命令)模式模式GoF:將一個(gè)請(qǐng)求封裝為一個(gè)對(duì)象,從而使你可用不同的請(qǐng)求對(duì)客戶進(jìn)行參數(shù)華;對(duì)請(qǐng)求排隊(duì)或記錄請(qǐng)求日志,以及支持克撤銷(xiāo)的操作。在網(wǎng)上查找Comm模式的相關(guān)資料,大多都是關(guān)于用戶界面的。可能和GOF的先入為主有關(guān)系。在GoF的書(shū)中,四位作者舉了個(gè)文本編輯器的例子。Comm模式通過(guò)將請(qǐng)求本身變成一個(gè)對(duì)象來(lái)使工具箱對(duì)象可向未指定的應(yīng)用對(duì)象提出請(qǐng)求。這個(gè)對(duì)象可被存儲(chǔ)并像其他對(duì)象一樣被傳遞。記得以前在《設(shè)計(jì)
2、模式精解》的讀書(shū)筆記中學(xué)習(xí)了幾條經(jīng)驗(yàn),其中一條是:注意封裝變化點(diǎn)。在Comm模式中就是對(duì)變化點(diǎn)的典型封裝。在Comm模式中有一個(gè)關(guān)鍵的抽象類,一般人們命名為Comm類。他定義了一個(gè)執(zhí)行操作的接口。它有一個(gè)抽象的execute操作。具體的Comm子類(繼承自Comm的具體類)將接收者(Receiver類)作為其一個(gè)事例變量,并實(shí)現(xiàn)execute操作,指定接收者采取的動(dòng)作。而接收者有執(zhí)行該請(qǐng)求所需要的具體信息。下面舉個(gè)例子:先定義關(guān)鍵的Co
3、mm抽象類(這里也可以用接口):packageCommpublicabstractclassCommprotectedReceiverreceiverpublicComm(Receiverreceiver)this.receiver=receiverendComm(...)abstractpublicvoidexecute()endabstractclassComm再繼承一個(gè)具體類:packageCommpublicclassConcr
4、eteCommextendsCommpublicConcreteComm(Receiverreceiver)super(receiver)Receiverrceiver=newReceiver()Commcomm=newConcreteComm(rceiver)Invokerinvoker=newInvoker()CreatesanewinstanceofCommPatternpublicCommPattern()endCommPatt
5、ernpublicvoidshowCommPattern()invoker.setComm(comm)invoker.executeComm()endshowCommPattern()publicstaticvoidmain(String[]args)System.out.println(““)System.out.println(“TheCommPattern!“)CommPatterncp=newCommPattern()cp.sh
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
評(píng)論
0/150
提交評(píng)論