NipGeihou's blog NipGeihou's blog
  • 开发规范
  • 进阶笔记
  • 微服务
  • 快速开始
  • 设计模式
  • NoSQL 数据库

    • Redis
  • 数据结构与算法
  • 计算机网络
烹饪
关于
  • 分类
  • 标签
  • 归档

NipGeihou

我见青山多妩媚,料青山见我应如是
  • 开发规范
  • 进阶笔记
  • 微服务
  • 快速开始
  • 设计模式
  • NoSQL 数据库

    • Redis
  • 数据结构与算法
  • 计算机网络
烹饪
关于
  • 分类
  • 标签
  • 归档
  • 设计模式

    • 介绍与目的
    • 七大设计模式
    • 面向对象编程范式
    • 创造者模式
    • 创建者模式-单例模式
    • 创建者模式-工厂模式
    • 创建者模式-抽象工厂模式
    • 创建者模式-建造者模式
    • 创建者模式-原型模式
    • 结构型模式
    • 代理模式
    • 中介者模式
    • 命令模式
      • 概念
      • 使用场景
      • 结构
      • 代码示例
    • 责任链模式
    • 装饰模式
    • 策略模式
    • 适配器模式
    • 迭代器模式
    • 组合模式
    • 观察者模式
    • 外观模式
    • 备忘录模式
    • 访问者模式
    • 状态模式
    • 解释器模式
    • 享元模式
    • 桥接模式
    • 模板方法模式
  • 开发规范

  • 经验分享

  • 记录

  • 快速开始

  • 笔记

  • 面试题

  • 微服务

  • Java
  • 设计模式
NipGeihou
2022-09-01
目录

命令模式

# 概念

将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对 ** 请求排队或者记录请求日志,** 可以提供命令的撤销和恢复功能。

# 使用场景

认为是命令的地方就可以采用命令模式。

  • POJO 的 Get/Set 方法

  • 在 GUI 开发中,一个按钮的点击是一个命令,可以采用命令模式;

  • 模拟 DOS 命令的时候,当然也要采用命令模式;触发-反馈机制的处理等。

# 结构

Receive 接收者角色:该角色就是干活的角色,命令传递到这里是应该被执行的。

Command 命令角色:需要执行的所有命令都在这里声明。

Invoker 调用者角色:接收到命令,并执行命令。

# 代码示例

public class Invoker {
    private Command command;

    // 设值注入
    public void setCommand(Command command) {
        this.command = command;
    }

    // 执行命令
    public void action() {
        this.command.execute();
    }
}
上次更新: 2023/06/10, 18:45:20
中介者模式
责任链模式

← 中介者模式 责任链模式→

最近更新
01
概念
06-10
02
第三方登录 - Facebook
06-09
03
防火墙 - iptables
06-08
更多文章>
Theme by Vdoing | Copyright © 2018-2023 NipGeihou | 友情链接
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式