命令模式(别名:动作,事物)
为系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。
Command Pattern(Another name:Action,Transaction)
Encapsulate a request as an object, thereby letting you parameterize clients with different requests, queue or log requests, and support undoable operations.
类图

模式的结构与使用
命令模式的结构中包四种角色。
+ 接受者(Receiver):接受者是一个类的实例,该实例负责执行与请求相关的操作。
+ 命令(Command):命令是一个接口,规定了用来封装“请求”的若干个方法,比如:execute()、undo()等方法。
+ 具体命令(Concrete command):具体命令是实现命令接口的类的实例。具体命令必须实现接口中的方法,比如execute(),使该方法封装一个“请求”。
+ 请求者(Invoker):请求者是一个包含Command接口变量的类的实例。请求者中的Command接口的

本文深入探讨了Java中的命令模式,详细解释了其作为动作和事务的别名,介绍了类图和模式的结构。内容涵盖接收者、命令、具体命令和请求者角色,以及如何实现命令撤销功能。通过具体实例展示了命令模式如何降低系统组件间的耦合,满足开-闭原则,并支持日志记录和请求排队。同时,文章指出了命令模式适用于需要在不同时刻制定、排列和执行请求,提供撤销操作,以及支持宏操作的场景。
订阅专栏 解锁全文

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



