Skip to content
Linsir ABC
Main Navigation
首页
指南
核心
语法基础
基础模块
JVM
MySQL
MySQL 首页
第一章:MySQL架构与历史
Effective
Effective 首页
设计模式
Appearance
Menu
Return to top
On this page
Table of Contents for current page
状态模式 (State Pattern)
允许对象在其内部状态改变时改变它的行为
一、模式概述
1.1 定义
状态模式(State Pattern)是一种行为型设计模式,它允许对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。
1.2 适用场景
一个对象的行为取决于它的状态,并且它必须在运行时刻根据状态改变它的行为
一个操作中含有庞大的多分支的条件语句,且这些分支依赖于该对象的状态
1.3 优缺点
优点
缺点
状态转换显式化
增加了类和对象的个数
避免使用庞大的条件语句
实现较为复杂
符合单一职责原则
状态过多时维护困难
二、相关文档
代码指南