博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
设计模式之命令模式
阅读量:5081 次
发布时间:2019-06-12

本文共 1061 字,大约阅读时间需要 3 分钟。

命令模式:将一个请求封装为一个对象,从而可以用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。

 

public abstract class Command {    protected Receiver receiver;    public Command(Receiver receiver) {        this.receiver = receiver;    }    public abstract void execute();}

 

public class ConcreteCommand extends Command {    public ConcreteCommand(Receiver receiver) {        super(receiver);    }    @Override    public void execute() {        receiver.action();    }}

 

public class Receiver {    public void action() {        System.out.println("执行请求!");    }}

 

public class Invoker {    private Command command;    public void setCommand(Command command) {        this.command = command;    }    public void executeCommand() {        command.execute();    }}

 

public class CommandDemo {    public static void main(String[] args) {        Receiver receiver = new Receiver();        Command command = new ConcreteCommand(receiver);        Invoker invoker = new Invoker();        invoker.setCommand(command);        invoker.executeCommand();    }}

 

转载于:https://www.cnblogs.com/emoji1213/p/7652588.html

你可能感兴趣的文章
caffe学习记录(三) Blob,layer Net, solver配置文件的编写
查看>>
删除sql数据库日志的方法
查看>>
笨功夫(转)
查看>>
MongoDB 系列教程
查看>>
iOS Button选中与取消
查看>>
Linux 下面screen命令的用法
查看>>
清北考前刷题day6下午好
查看>>
C# DataGridView样式 (蓝色)
查看>>
【Red Hat Linux基础】 磁盘分区详细教程
查看>>
查看端口被谁占用了
查看>>
hdu1856: More is better
查看>>
Oracle_4 sql标准 连接 select小结
查看>>
对于jQuery插件,您懂多少?想开发属于自己的插件?进来吧!
查看>>
Asp.Net Core 第05局:读取配置
查看>>
关于设计模式
查看>>
ubuntu Nodejs和npm的安装
查看>>
装饰器,迭代器与生成器
查看>>
endpoint 理解-1
查看>>
Lambad表达式树(转)
查看>>
$Django 支付宝支付,微信服务号推送消息 (测试需要把应用程序部署到服务器上)...
查看>>