1.系統需要將請求呼叫者和請求接收者解耦,使得呼叫者和接收者不直接互動。
2.系統需要在不同的時間指定請求、將請求排隊和執行請求。
3.系統需要支援命令的撤銷(undo)操作和恢復(redo)操作。
4.系統需要將一組操作組合在一起。
command命令角色 :定義命令的介面,宣告具體命令類需要執行的方法。這是乙個抽象角色。
concretecommand具體命令角色:命令介面的具體實現物件,通常會持有接收者,並呼叫接收者的功能來完成命令要執行的操作。
invoker請求者角色:負責呼叫命令物件執行請求,通常會持有命令物件(可以持有多個命令物件)。invoker是client真正觸發命令並要求命令執行相應操作的地方(使用命令物件的入口)。
/**
* created by administrator on 2019/3/6 0006.
* 命令抽象
*/public inte***ce command
/**
* created by administrator on 2019/3/6 0006.
* * 具體命令角色:
* * 進攻命令
*/public class attachcommand implements command
@override
public void execute()
@override
public void sleep()
}
/**
* created by administrator on 2019/3/6 0006.
* * 具體命令角色:
* * 取消進攻命令
*/public class cancelcommand implements command
@override
public void execute()
@override
public void sleep()
}
/**
* created by administrator on 2019/3/6 0006.
* 命令的接收者,負責具體執行請求
* * 軍隊
* 具體執行者,來執行命令
Android設計模式之(10) 命令模式
命令模式屬於行為模式。如你的上級領導指派給你的a,b,c三項任務。讓你做a,你就做a,讓你做b就做b。指哪打哪。外部的人對於你和你的領導來說,知道你的領導派發了abc任務給你,你也完成abc任務,任務具體是怎麼完成的外部的人並不需要關心。大學的新生入學都會進行軍訓,軍訓的專案有正步,齊步,軍姿等等 ...
android設計模式
一句話總結23種設計模式 目錄android的設計模式 設計模式的六大原則 一句話總結23種設計模式則 建立型模式 android的設計模式 單例模式 android的設計模式 建造者模式 android的設計模式 工廠方法模式 android的設計模式 簡單工廠模式 android的設計模式 抽象...
android設計模式 builder設計模式
builder模式是建立乙個複雜物件的建立型模型,允許使用者在不知道複雜物件的內部細節的情況下進行精細化的控制,是將構建複雜物件的過程和控制物件的過程進行分隔開,從而達到解耦的目的。1.實現方法 在複雜的物件的外面建立乙個控制物件builder,並且在使用方式上一般使用鏈式呼叫,也就是每個方法中re...