命令模式(Command Pattern)是一種數(shù)據(jù)驅(qū)動(dòng)的設(shè)計(jì)模式,它屬于行為型模式。請(qǐng)求以命令的形式包裹在對(duì)象中询兴,并傳給調(diào)用對(duì)象跟啤。調(diào)用對(duì)象尋找可以處理該命令的合適的對(duì)象诽表,并把該命令傳給相應(yīng)的對(duì)象,該對(duì)象執(zhí)行命令隅肥。
UML圖:
命令模式就是把行為方法分裝成對(duì)象竿奏,然后傳遞給調(diào)用該方法的對(duì)象,例如:
經(jīng)紀(jì)人(broker)執(zhí)行客戶買入股票和賣出股票的行為腥放,客戶就把買入和賣出指令傳遞給經(jīng)紀(jì)人泛啸。即便現(xiàn)在我要增加買賣基金也,只需要新增新的行為對(duì)象秃症,而不需要修改broker候址,對(duì)于broker來(lái)說(shuō)都是下單order的命令。
代碼如下:
股票類:
經(jīng)紀(jì)人類:
下單接口:
StockBuyOrder:將購(gòu)買股票這一行為封裝成對(duì)象
StockSellOrder:將賣出股票這一行為封裝成對(duì)象种柑。
TestDemo:
讀者可自行添加買賣基金的行為對(duì)象岗仑,代碼我就不貼了,別問(wèn)為什么聚请,因?yàn)槲覒?/p>