首页 > 其他分享 >状态模式

状态模式

时间:2022-08-18 09:34:19浏览次数:55  
标签:状态 对象 不同 会过 心情 模式

1.定义

允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。其别名为状态对象,状态模式是一种行为型模式。

2.类图

 

 

 3.例子

每个人每天都会带着不同的心情去做一件事儿,但是心情不同的时候做事的方式也不相同。如果用if来判断的话层数会过多,所以使用不同的状态类来判断。

标签:状态,对象,不同,会过,心情,模式
From: https://www.cnblogs.com/duowenjia/p/16597591.html

相关文章

  • 观察者模式
    1.定义定义了对象间一种一对多的关系,使得每当一个对象状态发生改变时,其相关的依赖对象皆得到通知并被自动更新。2.类图  3.例子一个人借了很多钱,等到他有钱了就还......
  • 外观模式
    1.定义要求一个子系统的外部与其内部的通信必须通过一个统一的对象进行。外观模式提供一个高层次的接口,使得子系统更易使用。2.类图  3.例子原来开证明需要自己去......
  • 适配器模式
    1.定义将一个类的接口变成客户端所期待的另一种接口,从而使原本接口不匹配而无法再一起工作的两个类能够再一起工作。2.类图  3.例子会手语的人将新闻联播表达给聋......
  • GCM模式查表优化
    一、GCM介绍GCM是分组密码的一种工作模式,具体细节可通过NIST的文档了解RecommendationforBlockCipherModesofOperation:Galois/CounterMode(GCM)andGMAC......
  • 设计模式学习(4)分开考虑
    桥接模式将类功能的层次结构和实现结构分离开实现层次结构:在模板方法模式中,我们通过重写父类的方法来达到实现自己的功能的目的。这里使用的继承只是子类为了在父类的接......
  • 亮点4-搜索结果的重新排序采用了本地单页排序和服务端多页排序两种可选模式-《教育行
    《教育行业核心数据流程管理平台》的设计当中,《学生基本信息》管理模块是一个最基本的模块,也是一个十分重要的平台组成部分。它的设计好坏,直接关系到业务管理人员的工作效......
  • Linux-进程管理(1)Linux进程睡眠状态 disk sleep (kill -9 杀不掉D状态进程)
    参考文档Linux进程睡眠状态disksleep1.Linux进程状态Running(R):运行或将要运行Interruptible(S):被阻断而等待一个事件,可能会被一个信号**Uninterruptible(D):被阻......
  • 23设计模式 24 visitor 访问者模式
      有这样一种情况,看一个视频  用户分   normal, VIP,SVIP   abstract User {}Normal:UserVIP:UserSVIP :User  在子类中override User......
  • Qt Debug模式无法运行
    问题:如题,在QtCreator中使用Debug模式启动程序,直接提示“程序异常结束。”,也不报任何错,然后Debug目录直接双击xxx.exe文件,提示缺少Qt5Cored.dll解决方法:从QT的bin目录下......
  • JSP内置对象、MVC开发模式
    JSP内置对象内置对象:在jsp页面中不需要创建,直接使用对象变量名  真实类型  作用*pagecontext......