行為型 命令模式

2021-09-23 14:27:50 字數 720 閱讀 7269

將乙個請求封裝成乙個物件(command),從而使你可以用不同的請求對客戶進行引數化。目的是達到命令的發出者和執行者之間解耦,實現請求和執行分開。

三個角色:

received:行為實現者,真正的命令執行物件。

command:命令類,含有具體接收者成員引用。

invoker: 行為請求者,利用命令物件成員,為接收者發布命令。

優點:降低了系統耦合度。 分離行為請求者與行為實現者。

新的命令可以很容易新增到系統中去。

缺點:使用命令模式可能會導致某些系統有過多的具體命令類。

public class client 

}inte***ce command

class invoker

public void action()

}class receiver

public void action2()

}class mycommand1 implements command

@override

public void execute()

} class mycommand2 implements command

@override

public void execute()

} output:

action1

action2

設計模式 行為型 命令模式

設計模式行為型 1.觀察者模式 2.模板模式 3.策略模式 4.職責鏈模式 5.狀態模式 6.迭代器模式 7.訪問者模式 8.備忘錄模式 9.命令模式 10.直譯器模式 11.中介模式 將乙個請求封裝為乙個物件,從而使你可用不同的請求對客戶端進行引數化,對請求排隊或記錄請求日誌,以及支援可撤銷的操作...

設計模式 行為型 命令

具體實現 package com.desinmode.command public inte ce command package com.desinmode.command public class light public void off package com.desinmode.comma...

《設計模式》17 命令模式(行為型)

將請求封裝成為命令物件,使 方法的請求者 與 方法的實現者 解耦。命令物件可以被儲存 排隊 記錄 處理 撤銷等。又稱為動作 action 模式或事務 transaction 模式。呼叫者 請求者 invoker 請求的傳送者,持有乙個或多個命令物件,通過呼叫命令物件執行命令介面處理相關請求,它不直接...