將一個(gè)請(qǐng)求封裝為一個(gè)對(duì)象,從而讓我們可用不同的請(qǐng)求對(duì)客戶進(jìn)行參數(shù)化;對(duì)請(qǐng)求排隊(duì)或者記錄請(qǐng)求日志,以及支持可撤銷的操作。其別名為動(dòng)作(Action)模式或事務(wù)(Transaction)模式。
結(jié)構(gòu)圖
角色與理解
- 命令模式包含如下角色:
- Command(抽象命令類):所有具體命令類的父類,一般定義為抽象類或者接口,聲明執(zhí)行請(qǐng)求的execute()方法等。
- Concrete Command(具體命令類):繼承抽象命令類,持有接收者的引用,在execute()等方法中調(diào)用接收者的方法已完成業(yè)務(wù)的處理。
- Invoker(調(diào)用者):調(diào)用者即請(qǐng)求發(fā)送者,通過(guò)命令對(duì)象執(zhí)行請(qǐng)求
- Receiver(接收者):請(qǐng)求的最終執(zhí)行者
- 具體命令類對(duì)接收者進(jìn)行封裝,抽象命令類對(duì)具體命令類進(jìn)行抽象,客戶端面向抽象命令類編程
- 這里調(diào)用者角色的作用是對(duì)調(diào)用抽象命令類之前和之后做一些事情,而是命令類職責(zé)更加的單一
核心代碼
- 接受者
- 抽象命令類
- 具體命令類
- 命令隊(duì)列
- 調(diào)用者
- 工具類
- 客戶端
-
封裝技術(shù)
+關(guān)注
關(guān)注
12文章
578瀏覽量
68585
發(fā)布評(píng)論請(qǐng)先 登錄
基于入侵行為模式的告警關(guān)聯(lián)
設(shè)計(jì)模式:備忘錄設(shè)計(jì)模式
設(shè)計(jì)模式行為型:命令模式

設(shè)計(jì)模式行為型:備忘錄模式

設(shè)計(jì)模式行為型:策略模式

設(shè)計(jì)模式行為型:狀態(tài)模式

設(shè)計(jì)模式行為型:觀察者模式

linux切換到命令行模式
單片機(jī)按鍵切換模式命令
解決睡眠模式進(jìn)入系統(tǒng)在速度命令模式下的問(wèn)題

評(píng)論