软设模式之状态模式

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

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

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

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

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

相关推荐
24zhgjx-fuhao几秒前
虚链路的配置
开发语言·网络·php
techdashen34 分钟前
Rust 中的小字符串:smol_str 与 smartstring 的对决
开发语言·后端·rust
码哥字节38 分钟前
升到 Spring Boot 4.1,虚拟线程开了,HikariCP 连接池却崩了
java·springboot·claude code
devilnumber40 分钟前
java自定义事件处理器极简版:「外卖点餐」场景
java·开发语言
J2虾虾42 分钟前
Spring AI Alibaba - 智能体作为工具(Agent Tool)
java·人工智能·spring
Hesionberger42 分钟前
巧用异或找出唯一数字(多解)
java·数据结构·python·算法·leetcode
铁链鞭策大师43 分钟前
javaEE之多线程(2)
java·前端·java-ee
小何code44 分钟前
C语言【初阶】第1节,初识C语言
c语言·开发语言
Devin~Y1 小时前
从内容社区到AIGC客服:Spring Boot、Redis、Kafka、K8s、RAG的三轮大厂Java面试对话(附标准答案)
java·spring boot·redis·spring cloud·kafka·kubernetes·micrometer