0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

设计模式行为型:命令模式

冬至子 来源:码农架构 作者:小智 2023-06-06 17:49 次阅读

将一个请求封装为一个对象,从而让我们可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。其别名为动作(Action)模式或事务(Transaction)模式。

结构图

图片

角色与理解

  • 命令模式包含如下角色:
  • Command(抽象命令类):所有具体命令类的父类,一般定义为抽象类或者接口,声明执行请求的execute()方法等。
  • Concrete Command(具体命令类):继承抽象命令类,持有接收者的引用,在execute()等方法中调用接收者的方法已完成业务的处理。
  • Invoker(调用者):调用者即请求发送者,通过命令对象执行请求
  • Receiver(接收者):请求的最终执行者
  • 具体命令类对接收者进行封装,抽象命令类对具体命令类进行抽象,客户端面向抽象命令类编程
  • 这里调用者角色的作用是对调用抽象命令类之前和之后做一些事情,而是命令类职责更加的单一

核心代码

  • 接受者

图片

  • 抽象命令类

图片

  • 具体命令类

图片

  • 命令队列

图片

  • 调用者

图片

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • IC封装
    +关注

    关注

    4

    文章

    185

    浏览量

    26716
收藏 人收藏

    评论

    相关推荐

    什么是命令模式

    命令模式行为
    发表于 08-28 08:48

    基于入侵行为模式的告警关联

    本文提出了一种基于入侵行为模式的告警关联方式。入侵行为模式是定义在时间基础上的一组谓词公式,其实质是通过时间限制联系在一起的入侵事件的集合。该方法在对大量告
    发表于 08-13 08:35 6次下载

    设计模式:备忘录设计模式

    备忘录设计模式(Memento Design Pattern)是一种行为设计模式,它的主要目的是在不破坏对象封装性的前提下,捕捉和保存一个对象的内部状态
    的头像 发表于 06-06 11:19 797次阅读

    设计模式行为:中介模式

    提供一个中介者完成对一系列操作的封装,降低对象间的系统耦合度。中介者模式又称为调停者模式
    的头像 发表于 06-06 17:42 699次阅读
    设计<b class='flag-5'>模式</b><b class='flag-5'>行为</b><b class='flag-5'>型</b>:中介<b class='flag-5'>模式</b>

    设计模式行为:备忘录模式

    备忘录模式(Memento Pattern)保存一个对象的某个状态,以便在适当的时候恢复对象。备忘录模式属于行为模式
    的头像 发表于 06-07 11:16 851次阅读
    设计<b class='flag-5'>模式</b><b class='flag-5'>行为</b><b class='flag-5'>型</b>:备忘录<b class='flag-5'>模式</b>

    设计模式行为:策略模式

    在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为模式
    的头像 发表于 06-07 11:18 656次阅读
    设计<b class='flag-5'>模式</b><b class='flag-5'>行为</b><b class='flag-5'>型</b>:策略<b class='flag-5'>模式</b>

    设计模式行为:状态模式

    在状态模式(State Pattern)中,类的行为是基于它的状态改变的。这种类型的设计模式属于行为模式
    的头像 发表于 06-07 11:20 605次阅读
    设计<b class='flag-5'>模式</b><b class='flag-5'>行为</b><b class='flag-5'>型</b>:状态<b class='flag-5'>模式</b>

    设计模式行为:访问者模式

    在访问者模式(Visitor Pattern)中,我们使用了一个访问者类,它改变了元素类的执行算法。
    的头像 发表于 06-07 15:11 743次阅读
    设计<b class='flag-5'>模式</b><b class='flag-5'>行为</b><b class='flag-5'>型</b>:访问者<b class='flag-5'>模式</b>

    设计模式行为:模板方法模式

    在模板模式中,一个抽象类公开定义了执行它的方法的方式/模板。
    的头像 发表于 06-07 15:13 582次阅读
    设计<b class='flag-5'>模式</b><b class='flag-5'>行为</b><b class='flag-5'>型</b>:模板方法<b class='flag-5'>模式</b>

    设计模式行为命令模式

    将一个请求封装为一个对象,从而让我们可用不同的请求对客户进行参数化;
    的头像 发表于 06-07 15:39 627次阅读
    设计<b class='flag-5'>模式</b><b class='flag-5'>行为</b><b class='flag-5'>型</b>:<b class='flag-5'>命令</b><b class='flag-5'>模式</b>

    设计模式行为:观察者模式

    定义对象之间的一种一对多依赖关系,使得每一个对象发生状态的变化时,其相关依赖对象皆得到通知并被自动更新,又称为发布-订阅模式、模型-视图模式、源-监听器模式或从属者模式
    的头像 发表于 06-07 16:56 666次阅读
    设计<b class='flag-5'>模式</b><b class='flag-5'>行为</b><b class='flag-5'>型</b>:观察者<b class='flag-5'>模式</b>

    行为设计模式在UVM中的应用

    接下来介绍行为设计模式在UVM中的应用。
    的头像 发表于 08-09 14:01 701次阅读
    <b class='flag-5'>行为</b><b class='flag-5'>型</b>设计<b class='flag-5'>模式</b>在UVM中的应用

    linux切换到命令模式

    在Linux中,可以通过以下步骤切换到命令模式: 打开终端。可以在应用菜单中找到终端或命令行终端。 在终端中输入命令“exit”或“logout”,然后按回车键。 系统会提示您输入管
    的头像 发表于 11-13 16:47 1769次阅读

    单片机按键切换模式命令

    单片机按键切换模式命令是指在单片机系统中,通过按下按键来切换系统工作模式命令。这种命令通常用于控制系统的状态和功能,使系统能够根据用户的需
    的头像 发表于 12-15 10:31 3052次阅读

    解决睡眠模式进入系统在速度命令模式下的问题

    电子发烧友网站提供《解决睡眠模式进入系统在速度命令模式下的问题.pdf》资料免费下载
    发表于 09-24 10:34 0次下载
    解决睡眠<b class='flag-5'>模式</b>进入系统在速度<b class='flag-5'>命令</b><b class='flag-5'>模式</b>下的问题