状态模式和策略模式的区别

策略是外界给的,策略怎么变,是调用者考虑的事情,系统只是根据所给的策略做事情。

状态是系统自身的固有的,由系统本身控制,调用者不能直接指定或改变系统的状态转移。


状态模式是策略模式的孪生兄弟,是因为它们的UML图是一样的。

但意图却完全不一样,策略模式是让用户指定更换的策略算法,而状态模式是状态在满足一定条件下的自动更换,用户无法指定状态,最多只能设置初始状态。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 设计模式概述 在学习面向对象七大设计原则时需要注意以下几点:a) 高内聚、低耦合和单一职能的“冲突”实际上,这两者...
    彦帧阅读 3,804评论 0 14
  • 2018年3月17日马奕然 今天我的二姐来了。我们和奶奶玩,玩的就...
    那仁然阅读 188评论 0 0
  • 天地苍茫河冻冰,树干突兀撑苍穹。 繁华落尽现本色,最喜寒冬露真容。
    憨爷_30be阅读 194评论 0 1
  • 刚看完百鸟朝凤,内心波澜起伏,思绪飞扬,我愿告诉身边的每一个人,百鸟朝凤,值得一看。 第一。农村文化...
    施小丹阅读 388评论 0 3
  • 第九章:各有所思,痛思梅月 文/晨屹 “和栀,本宫吩咐的,你都传达到各个宫里了吗?”凤颜倾一边看着自己这张和那女人...
    晨屹阅读 423评论 8 14