Android与设计模式——状态(State)模式

本文探讨了在Android4.4数据连接管理中如何运用状态(State)模式。通过StateMachine类,实现WiFi、蓝牙和数据连接的状态管理。文章提到了7种状态子类,作为DataConnecton的内部类,用于在不同网络连接状态间的切换。状态转换由DataConnecton的transitionTo()方法控制,而DefaultState作为其他状态的父类,负责处理未定义的行为。
摘要由CSDN通过智能技术生成
在阎宏博士的《JAVA与模式》一书中开头是这样描述状态(State)模式的:
  状态模式,又称状态对象模式(Pattern of Objects for States),状态模式是对象的行为模式。
  状态模式允许一个对象在其内部状态改变的时候改变其行为。这个对象看上去就像是改变了它的类一样。


状态模式的结构
  用一句话来表述,状态模式把所研究的对象的行为包装在不同的状态对象里,每一个状态对象都属于一个抽象状态类的一个子类。状态模式的意图是让一个对象在其内部状态改变的时候,其行为也随之改变。状态模式的示意性类图如下所示:




  状态模式所涉及到的角色有:

  ●  环境(Context)角色,也成上下文:此例中由DataConnecton充当,定义客户端所感兴趣的接口,并且保留一个具体状态类的实例。这个具体状态类的实例给出此环境对象的现有状态。
  ●  抽象状态(State)角色:定义一个接口IState,用以封装环境(Context)对象的一个特定的状态所对应的行为。
  ●  具体状态(ConcreteState)角色:此例中由DcXXXState充当&#x
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值