软设模式之状态模式

设计模式中状态模式的意图是:允许一个对象在其内部状态被改变时改变它的行为

打个比方,在一款即时战略游戏中设计一辆坦克,坦克有普通攻击状态,还有一防空状态。通过设计一个坦克抽象父类,再在下面设计一个具体坦克子类,子类下面有一个普通攻击状态子类,一个防空状态子类,通过调动这些状态类实现状态转换

Context:情景类,定义客户应用程序有兴趣的接口,维护一个Concrete state子类的对象

state:抽象状态类,定义一个接口用来封装与Context的一个特别状态相关的行为

Concrete State:具体状态类,每一个具体状态类实现一个Context的状态相关的行为

相关推荐
zxctsclrjjjcph8 分钟前
【C语言】常见的C语言概念
c语言·开发语言
小灰灰爱代码13 分钟前
C++——求3个数中最大的数(分别考虑整数、双精度数、长整数的情况),用函数模板来实现。
开发语言·c++·算法
严文文-Chris16 分钟前
【设计模式-享元】
android·java·设计模式
Eiceblue20 分钟前
Python 复制Excel 中的行、列、单元格
开发语言·python·excel
项目題供诗24 分钟前
尚品汇-秒杀商品存入缓存、Redis发布订阅实现状态位(五十一)
开发语言·php
m0_7145902632 分钟前
汇编(实现C语言程序的调用)
c语言·开发语言·汇编
Flying_Fish_roe33 分钟前
浏览器的内存回收机制&监控内存泄漏
java·前端·ecmascript·es6
做技术的Pandaer35 分钟前
Go 第二期
开发语言·golang
新知图书36 分钟前
Rust编程的作用域与所有权
开发语言·后端·rust
c#上位机42 分钟前
C#事件的用法
java·javascript·c#