Android 设计模式入门到精通之十三:状态模式(State Pattern)

版权声明:本文为博主原创文章,未经允许不得转载,如有问题,欢迎指正,谢谢! https://blog.csdn.net/cbk861110/article/details/88213915

设计模式项目源码请移步:https://github.com/caobaokang419/WeatherApp(欢迎Github Fork&Star,代码设计模式&框架设计实现不妥之处,请帮忙指正),谢谢!

状态模式(State Pattern)

1. 概念

Allow an object to alter its behavior when its internal state changes. The object will appear to change its class.

状态模式允许对象在其内部状态改变时改变其它的行为,对象看起来好像修改了它的类。
 

2. 应用场景

状态机模型

3. 优点

a. 结构清晰;避免了过多的条件语句
b. 体现了开闭原则、单一职责原则;每个状态都是一个子类,增加状态的话 只要增加一个子类即可。
c. 封装性好;状态的变换 放到类的内部实现

扫描二维码关注公众号,回复: 5431427 查看本文章

4. 缺点

新增一个state ,需要新增一个子类,子类很多

4. 代码实践:

猜你喜欢

转载自blog.csdn.net/cbk861110/article/details/88213915