Android设计模式-7-状态模式

Android设计模式-7-状态模式,第1张

概述1.定义:当一个对象的内在状态改变时,其行为也随之改变2.适用场景:一个对象的行为取决于它的状态,并且它必须在运行时刻根据状态改变它的行为。一个 *** 作中含有庞大的多分支结构,并且这些分支决定于对象的状态。3.优缺点:优点:将繁琐的状态判断转换成结构清晰的状态类族,在避

1. 定义:

当一个对象的内在状态改变时,其行为也随之改变

2. 适用场景:

一个对象的行为取决于它的状态,并且它必须在运行时刻根据状态改变它的行为。

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

3. 优缺点:

优点:

将繁琐的状态判断转换成结构清晰的状态类族,在避免代码膨胀的同时也保证了可扩展性和可维护性

缺点:

会增加系统类和对象的个数

4. androID源码中的使用

WifiSettings中wifi的不同状态

5. 实例演示

以电视遥控器为例,分为开机状态和关机状态,普通的写法可能是如下这样,使用if-else去判断不同的状态

那么使用状态模式如何实现呢?

1. 抽取一个不同状态通用的接口

2. 实现开机关机两种状态

3. 遥控器类的实现

4. 创建遥控器类的实例,切换不同的状态

虽然看起来更复杂了,但是如果再增加一种状态时,确是要方便很多,不用修改控制器类的现有逻辑,而且状态间的切换也很容易

 我是今阳,如果想要进阶和了解更多的干货,欢迎关注公众号”今阳说“接收我的最新文章

总结

以上是内存溢出为你收集整理的Android设计模式-7-状态模式全部内容,希望文章能够帮你解决Android设计模式-7-状态模式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1054732.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)

保存