状态模式

介绍

状态模式把对象的行为包装在不同的状态对象里,每一个状态对象都有一个共同的抽象状态基类。

状态模式的意图是让一个对象在其内部状态改变的时候,其行为也发生改变。

定义

当一个对象在状态改变时允许改变其行为,这个对象看起来像是改变了其类。

Android 源码中的状态模式

Wi-Fi 管理中的状态模式,wifi 管理的状态模式中,状态之间并不是跨越式转换的,当前状态只能转换到上一状态或者下一状态,通过 State 类是 wifi 状态的基类,不同状态下就是依赖这个类的实现类的函数实现不同的行为。

实战

  1. 抽象状态操作基类
  2. 不同状态的实现类
  3. 声明状态管理类,在状态管理类中声明状态基类对象,并声明修改状态基类对象的方法
  4. 在是用时操作状态管理类的方法完成操作
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容