命令模式是对命令的封装.命令模式把发出命令的责任和执行命令的责任分割开,委派给不同的对象.该模式的示意类图如下:
一个command模式的例子
下面是一个Command模式的例子(模仿<Java与模式>中的例子).
现有一个录音机(AudioPlayer),他有播放(Play),到带(Rewind)和停止(Stop)三个功能,利用Command模式实现中,录音机(AudioPlayer)则为Receiver对象,将录音机的键盘作为Invoker对象,因为客户是通过他去执行播放,倒带,停止的功能(命令).
首先:定义录音机对象
    }
接下来定义命令对象,在这里,我采用一个抽象类AbstractCommand(ICommand角色)做为所有具体命令类的父类,所有具体命令类都要继承自该抽象类:
一个command模式的例子public abstract class AbstractCommand
    }
具体命令对象如下:
    }
接下来定义键盘对象KeyPad(Invoker角色):
    }
现在,客户端就可以这样控制录音机了:
一个command模式的例子AudioPlayer player = new AudioPlayer(); //定义receiver对象
一个command模式的例子

            pad.Stop();

相关文章:

  • 2022-12-23
  • 2021-10-11
  • 2022-02-13
  • 2021-10-03
  • 2021-07-26
  • 2022-12-23
  • 2021-08-22
  • 2022-01-09
猜你喜欢
  • 2021-05-22
  • 2021-10-30
  • 2022-12-23
  • 2022-03-06
  • 2021-09-14
  • 2021-12-02
  • 2021-05-08
相关资源
相似解决方案