設計模式 命令模式

2021-10-20 22:29:04 字數 1250 閱讀 3117

命令模式(英語:command pattern)是一種設計模式,它嘗試以物件來代表實際行動。命令物件可以把行動(action) 及其引數封裝起來,於是這些行動可以被:重複多次、取消(如果該物件有實現的話)、取消後又再重做。

優點

缺點

package pers.designpattern.command;

public

class

invoker

public

void

setcommand

(command command)

public

void

call()

}

宣告執行命令的介面,擁有執行命令的抽象方法 execute():

package pers.designpattern.command;

public

inte***ce

command

具體命令是抽象命令類的具體實現類,它擁有接收者物件,並通過呼叫接收者的功能來完成命令要執行的操作:

package pers.designpattern.command;

public

class

concretecommand

implements

command

@override

public

void

execute()

}

package pers.designpattern.command;

public

class

receiver

}

package pers.designpattern.command;

public

class

commandclient

}

執行結果:

呼叫者正在執行命令。。

命令傳送給接收者!

接收者命令執行完成!

命令執行完成!

參考:

設計模式 命令設計模式

一句話總結 命令設計模式的實質是將命令定義,命令的執行分離開,從而提公升了系統的解藕性 結構 命令的抽象command 命令的具體實現concretecommand 命令處理者抽象ireceiver 命令處理者的具體實現concretereceiver 命令的呼叫者invoker 客戶端client...

設計模式 命令模式

1 命令模式的角色組成 1 命令角色 command 生命執行操作的介面。介面或抽象類來實現。2 具體命令角色 concrete command 將乙個接收者物件繫結於乙個動作 呼叫接收者相應的操作,以實現命令角色宣告的執行操作的介面。3 客戶角色 client 建立乙個具體命令物件 並可以設定它的...

設計模式 命令模式

1 command.h ifndef command h define command h include include include using namespace std class chef 廚師,具體命令的執行者 class command 命令基類 class makemuttonco...