状态模式 男娘i 2021-09-17 00:08 300阅读 0赞 ## 20.状态模式 ## 核心思想就是:当对象的状态改变时,同时改变其行为,很好理解!就拿QQ来说,有几种状态,在线、隐身、忙碌等,每个状态对应不同的操作,而且你的好友也能看到你的状态,所以,状态模式就两点:1、可以通过改变状态来获得不同的行为。2、你的好友能同时看到你的变化。 class Program { static void Main(string[] args) { State s = new State(); s.Say(); s.Say(); s.Say(); Console.Read(); } } public interface People { void Say(State s); } public class Chinese : People { public void Say(State s) { Console.Write("现在是中文..."); s.people = new English(); Console.WriteLine("现在切换到了英文"); } } public class English : People { public void Say(State s) { Console.Write("现在是英文..."); s.people = new Chinese(); Console.WriteLine("现在切换到了中文"); } } public class State { public People people { get; set; } public State() { people = new Chinese(); Console.WriteLine("现在默认状态是中文"); } public void Say() { people.Say(this); } } ![70][] [70]: /images/20210725/b5016bf9b5e14e4e886af5ebe638ff83.png
相关 状态模式(状态机) 以前写状态机,比较常用的方式是用 if-else 或 switch-case,高级的一点是函数指针列表。最近,看了一文章[《c语言设计模式–状态模式(状态机)》][c](来源: 忘是亡心i/ 2023年02月20日 07:08/ 0 赞/ 108 阅读
相关 状态模式 //表示状态的接口类 public interface State { void smile(); void cry(); voi r囧r小猫/ 2022年06月10日 05:14/ 0 赞/ 182 阅读
相关 状态模式 转载请注明链接:[https://blog.csdn.net/feather\_wch/article/details/78647901][https_blog.csdn.ne 偏执的太偏执、/ 2022年06月05日 12:15/ 0 赞/ 201 阅读
相关 状态模式 1.使用场景: 常见的应用场景有线程对象各个状态之间的切换或者各种账号状态的管理等 2.UML表示 状态模式中主要有以下的几大角色: 2.1Context:环 淩亂°似流年/ 2022年05月31日 09:26/ 0 赞/ 181 阅读
相关 状态模式 状态模式 一、概述 1. 用于解决系统中复杂对象的状态转换以及不同状态下行为的封装问题。 2. 结构 Context环境类:环境类中维护 短命女/ 2022年04月17日 00:18/ 0 赞/ 200 阅读
相关 状态模式 前言 状态模式(State),当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。 状态模式主要解决的是当控制一个对象状态转换的条件表达式过 水深无声/ 2021年12月09日 00:49/ 0 赞/ 255 阅读
相关 状态模式 个人总结,除非非常符合情景,否则使用的也不多。因为会宁愿修改代码也不会去实现状态模式。 有一点像命令模式,虽然目的不同,一个为了存储,一个为了变化。但是根本手 墨蓝/ 2021年11月27日 06:14/ 0 赞/ 269 阅读
相关 状态模式 20.状态模式 核心思想就是:当对象的状态改变时,同时改变其行为,很好理解!就拿QQ来说,有几种状态,在线、隐身、忙碌等,每个状态对应不同的操作,而且你的 男娘i/ 2021年09月17日 00:08/ 0 赞/ 301 阅读
相关 状态模式 一 不使用状态模式 1 需求 通过按钮来控制一个电梯的状态,一个电梯有开门状态,关门状态,停止状态,运行状态。每一种状态改变,都有可能要根据其他状态来更新处理。例如 比眉伴天荒/ 2021年07月24日 14:05/ 0 赞/ 419 阅读
相关 状态模式 状态模式(State Pattern)中,类的行为是基于它的状态改变的。这种类型的设计模式属于行为型模式。 在状态模式中,我们创建表示各种状态的对象和一个行为随着状态... 小灰灰/ 2020年06月13日 05:49/ 0 赞/ 722 阅读
还没有评论,来说两句吧...