static void Main(string[] args) { ReceiverA rec1 = new ReceiverA("烤肉串张师傅"); ICommand cmd1 = new ConcreteCommandA(rec1); Invoker er1 = new Invoker(cmd1); er1.CallDefaultCmd(); //er1.CallSpecificCmd("烤10把羊肉串"); Console.ReadLine(); }
public Client() { //构造命令实现者 Implementor implementor = new Implementor(); //装配具体命令, 将命令实现者与具体命令关联 ConcreteCommandA concreteCommandA = new ConcreteCommandA(implementor); ConcreteCommandB concreteCommandB = new ConcreteCommandB(implementor); //构造命令调用者 Invoker invoker = new Invoker(); //命令作为参数,提供给命令调用者 invoker.Invoke(concreteCommandA); invoker.Invoke(concreteCommandB); }