我們通過乙個遊戲的業務邏輯來演示命令模式。
1 建立命令介面:
package commandpattern2;
public inte***ce command
2 建立命令的執行者:
package commandpattern2;
/*** 具體執行類 相當於 receiver
*/public class tetrismachine
public void toright()
public void tofall()
public void totansform()
}3 封裝具體的命令:
package commandpattern2;
public class leftcommand implements command
@override
public void execute()
package commandpattern2;
public class rightcommand implements command
@override
public void execute()
4 發出命令的請求:
package commandpattern2;
/*** 相當於 invoker
*/public class buttons
public void setleftcommand(leftcommand command)
public void toleft()
public void toright()
}5 玩家操作遊戲:
package commandpattern2;
public class player
}
Java設計模式之12 命令模式
命令模式 1 建立乙個命令介面 package commandpattern public inte ce command 2 建立乙個接收命令並執行的 類 package commandpattern public class receiver 3 建立乙個 請求者,發出命令請求 package ...
java設計模式之命令模式
意圖 將乙個請求封裝為乙個物件,從而可用不同的請求對客戶進行引數化 對請求排隊或記錄日誌,以及支援可撤銷的操作 動機 將 發出請求的物件 和 接收與執行這些請求的物件 分隔開來。效果 1 command模式將呼叫操作的物件和實現該操作的物件解耦 2 可以將多個命令裝配成乙個復合命令,復合命令是com...
java設計模式之命令模式
定義 把方法呼叫封裝起來,命令模式請求或者操作封裝到乙個物件之中,呼叫的物件需要知道是如何實現的,只要明白如何使用就好。應用場景 記錄日誌,是用這些命令實現撤銷或者恢復的 命令模式對命令進行封裝,發出和執行分派給兩個不同的物件 把請求命令和執行命令分開了 這樣做的好處是 a 便於新的命令加入 b 命...