当前位置:首页>>学习

状态模式

1

admin

优点

将所有与某个状态有关的行为放在一个类中,并且可以方便地增加新的状态,只需要改变对象状态即可改变对象的行为

允许状态转换逻辑和状态对象合成一体


去欸但

状态模式的使用必然会增加系统类和对象的个数

状态模式的结构与实现都较为复杂,如果使用不当将导致系统结构和代码的混乱

状态模式对开闭原则的支持并不友好


使用场景

当一个对象的行为取决于他的状态 并且他必须在运行时根据状态改变他的行为时,就可以考虑使用

一个操作中含有庞大的分支结构 并且这些分支决定于对象的状态时


返回顶部