博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一天一个设计模式(18)——状态模式
阅读量:7070 次
发布时间:2019-06-28

本文共 596 字,大约阅读时间需要 1 分钟。

状态模式 

当状态改变时,类的行为也发生改变。

状态模式是以面向对象的方式实现状态机的行为设计模式。对于状态模式,通过将每个单独状态实现为派生类的状态模式接口, 来实现一个状态机,并通过调用模式超类的方法来实现状态转换。状态模式可以被解释为一种策略模式,它能够通过调用模式接口定义的方法来切换当前策略。

实例

state=$state; } public function setState($state){ $this->state=$state; } public function type(string $words){ $this->state->write($words); }}$state=new DefaultState();$editor=new Editor($state);$editor->type("First Type");$editor->setState(new UpperState());$editor->type("Second Type");$editor->setState(new LowerState());$editor->type("Third Type");
状态模式实例

 

转载于:https://www.cnblogs.com/Bin-x/p/7453138.html

你可能感兴趣的文章
使用ASP.Net WebAPI构建REST服务(五)——客户端
查看>>
C语言双向链表
查看>>
Memcached在Windows下的配置和使用(转)
查看>>
中国国际服装服饰博览会 _百度百科
查看>>
设置tableView背景颜色
查看>>
c# 中的UserControl是什么 用户控件和自定义控件有什么区别
查看>>
漂亮的ActionBar效果
查看>>
32 脚本编程风格
查看>>
让低版本的 Android 项目显示出 Material 风格的点击效果
查看>>
来一篇新鲜的招聘笔试题(2014秋招版)
查看>>
HashMap工作原理(转载)
查看>>
hive0.13.1配置hwi
查看>>
CSS3 Filter的十种特效
查看>>
实用的eclipse adt 快捷键
查看>>
bootstrap 树
查看>>
Senparc.Weixin.MP SDK 微信公众平台开发教程(九):自定义菜单接口说明
查看>>
电容知识汇总
查看>>
【转】模块编译Android源码方法
查看>>
iOS8 CIGlassDistortion滤镜的使用
查看>>
windows运行打开服务命令的方法 :
查看>>