面试题答案
一键面试- Command(抽象命令类):
- 职责:定义一个执行操作的接口,通常包含一个执行方法
execute
。它是所有具体命令类的抽象父类,为具体命令类提供统一的接口规范。
- 职责:定义一个执行操作的接口,通常包含一个执行方法
- ConcreteCommand(具体命令类):
- 职责:继承自抽象命令类,实现抽象命令类中定义的执行方法。它持有接收者对象的引用,并在执行方法中调用接收者的相应操作,将请求封装成具体的可执行操作。
- Receiver(接收者):
- 职责:知道如何执行与请求相关的具体操作,是真正执行命令的对象。具体命令类通过调用接收者的方法来完成实际的工作。
- Invoker(调用者):
- 职责:负责调用命令对象的执行方法,触发命令的执行。它不关心具体的命令实现,只负责发起请求。通常持有一个或多个命令对象的引用,可以在运行时动态地设置要执行的命令。
- Client(客户端):
- 职责:创建具体命令对象,并设置命令对象的接收者。将具体命令对象传递给调用者,使得调用者知道执行哪个命令。客户端负责整个命令模式的初始化和配置工作。