命令模式

命令模式

命令(Command)模式:将一个请求封装为一个对象,使发出请求的责任和执行请求的责任分割开。这样两者之间通过命令对象进行沟通,这样方便将命令对象进行储存、传递、调用、增加与管理。

案例

一个命令执行者可以执行多个命令

java 复制代码
public class Receiver {
    public void eat(){
        System.out.println("正在吃饭。。。");
    }

    public void sleep(){
        System.out.println("开始睡觉。。");
    }
}
java 复制代码
public interface Commond {
    void execute();
}
java 复制代码
public class EatCommond implements Commond{

    private Receiver receiver = new Receiver();
    @Override
    public void execute() {
        receiver.eat();
    }
}
java 复制代码
public class SleepCommond implements Commond{
    private Receiver receiver = new Receiver();
    @Override
    public void execute() {
        receiver.sleep();
    }
}

命令发出者只需要设置命令就能执行

java 复制代码
public class Invoker {
    Commond commond;
    public void call(){
        commond.execute();
    }

    public void setCommond(Commond commond){
        this.commond = commond;
    }
}
相关推荐
一语长情12 分钟前
Netty流量整形:保障微服务通信稳定性的关键策略
java·后端·架构
盖世英雄酱581361 小时前
第一个RAG项目遇到的问题
java·spring boot
最初的↘那颗心1 小时前
Flink Stream API - 源码开发需求描述
java·大数据·hadoop·flink·实时计算
华仔啊1 小时前
别学23种了!Java项目中最常用的6个设计模式,附案例
java·后端·设计模式
在路上`1 小时前
前端学习之后端小白java的一些理论知识(框架)
java·学习
练习时长两年半的Java练习生(升级中)1 小时前
从0开始学习Java+AI知识点总结-18.web基础知识(Java操作数据库)
java·学习·web
计算机程序员小杨2 小时前
计算机专业的你懂的:大数据毕设就选贵州茅台股票分析系统准没错|计算机毕业设计|数据可视化|数据分析
java·大数据
y1y1z2 小时前
EasyExcel篇
java·excel
DokiDoki之父2 小时前
多线程—飞机大战排行榜功能(2.0版本)
android·java·开发语言
高山上有一只小老虎2 小时前
走方格的方案数
java·算法