美文网首页
2018-10-12 java策略模式总结备忘

2018-10-12 java策略模式总结备忘

作者: 秋限糖渍栗子 | 来源:发表于2018-10-12 23:40 被阅读0次

当我们通过继承的方式实现一个超类鸭子和不同种类鸭子的时候,这时候我们对不同种类的鸭子的行为抽象在超类里,具体实现在子类中,但是这样的不好的地方在于,超类若是增加了一个行为,会影响所有的子类,如果要消除子类中有些种类鸭子具有这样的不正确的行为,我们就必须在子类中覆盖,这样工作量就比较巨大,这时候就要采用策略模式来解除行为和鸭子种类直接的耦合关系,都说为了解决继承带来的强耦合关系,我们可以采用包含的方法来解决,就是将鸭子的行为写成行为族,抽象成接口和实现类的模式,用鸭子的抽象类包含行为族的接口,用行为族接口来调用具体的方法,而实现类由子类的构造函数中给出具体的实现类(行为族接口的某个具体的实现类即可),这样就解除了不同行为对鸭子对象的耦合,这样的既可以在鸭子子类中构造函数里设置默认的行为,还以通过set方法来为鸭子赋予不同的行为,方式更加灵活,可以在不改变子类的情况下实现子类的不用行为展现,更加灵活。

类似的

    ·策略模式把一个系列的算法封装到一个系列的具体策略类里面,作为一个抽象策略类的子类或策略接口的实现类。简单地说:准备一组算法,并将每一个算法封装起来,使它们可以互换。

相关文章

  • 2018-10-12 java策略模式总结备忘

    当我们通过继承的方式实现一个超类鸭子和不同种类鸭子的时候,这时候我们对不同种类的鸭子的行为抽象在超类里,具体实现在...

  • 设计模式(Swift) - 单例模式、备忘录模式和策略模式

    设计模式(Swift) - 单例模式、备忘录模式和策略模式 设计模式(Swift) - 单例模式、备忘录模式和策略模式

  • 设计模式 | 策略模式及典型应用

    本文的主要内容: 介绍策略模式 示例商场购物打折策略的实现 策略模式总结 源码分析策略模式的典型应用Java Co...

  • 设计模式回顾(四)

    接前篇,行为型设计模式数量较多,之前没有讲完,还剩下备忘录模式、状态模式、策略模式和中介者模式,本章继续。 备忘录...

  • 设计模式 | 备忘录模式及典型应用

    本文的主要内容: 介绍备忘录模式 示例 备忘录模式总结 备忘录模式 备忘录模式经常可以遇到,譬如下面这些场景: 浏...

  • java建造者模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java单例模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java外观模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java适配器模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java观察者模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

网友评论

      本文标题:2018-10-12 java策略模式总结备忘

      本文链接:https://www.haomeiwen.com/subject/nlsnaftx.html