command模式思想:
command模式的主要思想是将用户的请求封装成对象,invoker对象封装请求对象,用户通过invoker来对产生不同的命令请求,发送给接受者。通过invoker封装不同的命令对象来映射用户的不同请求命令。
一个典型的例子是,用户选择(发送请求)Item的子菜单,Item(这里把Item看成接收者)产生不同的动作。例如当用户选择undo、redo和display等不同子菜单时,Item产生不同的动作。
在这里,Item是命令接收者,invoker封装undo,redo和display对象(可以是对象池的形式),当用户产生不同命令时,命令执行execuse方法,在execuse方法里委托其封装(组合)的接收者(Item)做出相应动作。
本文介绍命令模式的设计思想,通过具体代码实现展示了如何将用户请求封装为对象,并利用调用者对象来执行不同的命令。示例中包括撤销、重做及显示等功能的实现。
1655

被折叠的 条评论
为什么被折叠?



