在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/Java  C#  iOS  Linux/ 關(guān)于命令模式定義的的一些疑惑?

關(guān)于命令模式定義的的一些疑惑?

命令模式定義:

將一個(gè)請(qǐng)求封裝為一個(gè)對(duì)象,從而使你可用不同的請(qǐng)求對(duì)客戶(hù)進(jìn)行參數(shù)化;
對(duì)請(qǐng)求排隊(duì)或記錄請(qǐng)求日志,以及支持可撤銷(xiāo)的操作

問(wèn)題:

  1. 這里的客戶(hù)是指?

  2. 用多不同的請(qǐng)求對(duì)客戶(hù)進(jìn)行參數(shù)化,這里該如何理解,能舉例說(shuō)明下嗎?

回答
編輯回答
離夢(mèng)

客戶(hù)就是創(chuàng)建調(diào)用組裝你命令模式中的所有類(lèi)的代碼。
舉個(gè)?:
一個(gè)GUI界面上面有一個(gè)按鈕,這個(gè)按鈕可以配置為打開(kāi)瀏覽器也可以配置為打開(kāi)文本編輯器。這里我們將打開(kāi)瀏覽器和打開(kāi)文本編輯器抽象之后寫(xiě)成具體命令類(lèi),這里瀏覽器和文本編輯器可以理解為接收者,而你的按鈕就是調(diào)用者。
程序的main函數(shù)就是創(chuàng)建一個(gè)GUI,創(chuàng)建一個(gè)打開(kāi)瀏覽器對(duì)象,創(chuàng)建一個(gè)按鈕對(duì)象并傳入打開(kāi)瀏覽器對(duì)象,將瀏覽器對(duì)象與按鈕對(duì)象形成關(guān)聯(lián)關(guān)系。這部分代碼就是客戶(hù)端。
不同的請(qǐng)求你可以理解為這里的打開(kāi)瀏覽器對(duì)象和打開(kāi)文本編輯器對(duì)象。通過(guò)初始化的時(shí)候給按鈕對(duì)象傳入不同的對(duì)象,那么這個(gè)按鈕就具有不同的功能。當(dāng)然通過(guò)反射功能,你可以將瀏覽器對(duì)象或者文本編輯器對(duì)象寫(xiě)入配置文件。通過(guò)反射在運(yùn)行時(shí)候給按鈕綁定不同的功能。

2018年9月13日 23:42