JAVA设计模式——命令模式

xiaoxiao2021-02-28  128

一句话解释

命令模式,通过理解命令这个词就可以了,我们去命令别人做这件事,而并非自己亲自去执行,那么就叫做命令模式。 命令模式通过封装过程为对象——Command类来实现。通常,我们都会使请求直接调用他的处理类,通过命令模式我们可以封装过程,从而可以对这个请求过程进行设定,达到我们想要的结果。例如,对Command类中添加线程池,设定超时时间,熔断机制等。

示例

/** * 真正对请求做出处理的类(接收者) */ public class Receiver { public void action() { System.out.println("执行了!"); } } /** * 命令类接口 */ public interface Command { void Execute(); } /** * 命令类实现类 */ public class Icommand implements Command { private Receiver receiver; @Override public void Execute() { receiver.action(); } public Icommand(Receiver receiver) { this.receiver = receiver; } } /** * 调用类,暴露给客户端 */ public class Invoker { private Command command; public void run() { command.Execute(); } public Invoker(Command command) { this.command = command; } } public class Client { public static void main(String[] args) { /*创建接受者(即请求的处理类)*/ Receiver receiver = new Receiver(); /*创建命令对象,设定它的接收者*/ Command command = new Icommand(receiver); /*创建调用对象,把命令传入进去*/ Invoker invoker = new Invoker(command); invoker.run(); } }
转载请注明原文地址: https://www.6miu.com/read-61823.html

最新回复(0)