`
锅巴49
  • 浏览: 161304 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

策略模式与状态模式区别

阅读更多

这两个模式UML相同,其实他们的运用场景有很大区别。

 

1、策略模式

 

     封装算法,让使用者可以更换不同的算法。变is a为has a 用组合来代替继承。

     一旦置入算法,不会因使用者的内部状态来改变算法。

     采用哪种算法,是由使用者掌握的。

 

2、状态模式

 

     对象的内部状态决定它的行为。不同的状态有不同的行为,不同的行为又切换不同的状态。

     当方法内出现很多if else时可以考虑使用状态模式。

     状态模式重要的一点是在行为执行时,状态的变更。

       

分享到:
评论

相关推荐

    55-Java设计模式之策略模式与状态模式1

    55-Java设计模式之策略模式与状态模式1

    23种设计模式之:建造者,代理,观察,策略,状态模式

    用幽默的方式写下这些设计模式,代码里面有相应注解,不会很难理解,每个包里面有1-2个代码事例,还有一点小说明,还有本人qq,现在只有5种,其他的设计模式期待下一个版本吧!

    unity-23种常见设计模式unity版

    总体来说设计模式分为三大类: 创建型模式:共五种:...行为型模式:共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

    设计模式-C++

    创建型模式,共五种:工厂方法模式、抽象工厂模式、...行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

    对比Java设计模式编程中的状态模式和策略模式

    主要介绍了Java设计模式编程中的状态模式和策略模式对比,文中列举了两种模式的相似点和不同点,并都举了代码的实例作为参照,需要的朋友可以参考下

    java 23种设计模式.zip

    设计模式主要分为三大类: 1.创建型模式:工厂模式、抽象...4.行为型模式:模板方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式、访问者模式。

    23种设计模式项目实例

    创建型模式,共五种:工厂方法模式、抽象工厂模式、...行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

    基于Java实现的23种设计模式Demo,抽象工厂模式、建造模式、工厂方法模式、原型模式、单例模式、外观模式、适配器模式等

    抽象工厂模式、建造模式、工厂方法模式、原型模式、单例模式、外观模式、适配器模式、桥接模式、组合模式、装饰模式、享元模式、代理模式、命令...录模式、观察者模式、状态模式、策略模式、模板方法模式、责任链模式...

    java常用23中设计模式

    行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。 其实还有两类:并发型模式和线程池模式。

    设计模式1,策略模式

    设计模式中的策略模式,门有两个状态,实现开门关门

    《Java设计模式》详解

    内容包括统一建模语言基础知识、面向对象设计原则、设计模式概述、简单工厂模式...状态模式、策略模式、模板方法模式、访问者模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式和访问者模式...

    设计模式所有实验及实验报告及代码.zip

    27策略模式 28命令模式 29责任链模式 30状态模式 31观察者模式 32中介者模式 33迭代器模式 34访问者模式 35备忘录模式 36解释器模式 37UMLet的使用与类图的设计 38创建型模式应用实验 39结构型模式应用实验 40行为型...

    23种JAVA设计模式和15种J2EE设计模式

    行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。 其实还有两类:并发型模式和线程池模式。

    java设计模式

    32.2 策略模式VS状态模式 32.2.1 策略模式实现人生 32.2.2 状态模式实现人生 32.2.3 小结 32.3 观察者模式VS责任链模式 32.3.1 责任链模式实现DNS解析过程 32.3.2 触发链模式实现DNS解析过程 32.3.3 小结 第33章 跨...

    java设计模式示例

    java设计模式示例 创建型模式(5种):工厂方法模式,...行为型模式(11种):策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

    Java23种设计模式可直接运行Demo

    行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。 其实还有两类:并发型模式和线程池模式。

    软件设计模式与体系结构(讲解+代码)

     【例4.16】状态模式-交通信号灯-设计1  【例4.16】状态模式-交通灯信号灯-设计2  【例4.16】状态模式-交通灯信号灯-设计3 下篇:软件体系结构例子代码  【例6.4】结构化设计-文件更新-C源代码  【例6.5】...

    C#23种设计模式样例代码和UML图

    行为型模式(策略模式、 迭代器模式、原型模式、职责链模式、 模板方法、 命令模式、 解释器模式、 中介者模式、 访问者模式、 状态模式、 备忘录模式); 结构型模式(代理模式、桥接模式、适配器模式、外观模式、...

    23种设计模式 -设计模式图解.7z

    23种设计模式的特点定义、优缺点、使用场景,源码中...行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

    设计模式课程每章ppt(共27章).zip

    ├── 第24章_状态模式.ppt ├── 第25章_策略模式.ppt ├── 第26章_模板方法模式.ppt ├── 第27章_访问者模式.ppt ├── 第2章_面向对象设计原则.ppt ├── 第3章_设计模式概述.ppt ├── 第4章_简单工厂...

Global site tag (gtag.js) - Google Analytics