zoukankan      html  css  js  c++  java
  • java设计模式之策略模式总结

    策略模式的定义:(定义截自http://www.cnblogs.com/whgk/p/6087064.html)

    1、策略模式定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户

    换句话讲,也就是将那些使用的方法分别封装成独立的类,然后将这一类使用接口统一管理起来,让需要使用这些方法的用户能够随时调用它们。上面例子中的战斗行为就相当于定义中的算法一词。只是换了个说法而已。

    缺点:

    1、客户端必须知道所有的策略类,并自行决定使用哪一个策略类。这就意味着客户端必须理解这些算法的区别,以便适时选择恰当的算法类。换言之,策略模式只适用于客户端知道算法或行为的情况。

    2、由于策略模式把每个具体的策略实现都单独封装成为类,如果备选的策略很多的话,那么这些类的数目就非常多了。

    从代码角度去认识策略模式:

    (赵云用三个妙计解决问题,这个场景中的要素有三个:三个妙计,一个锦囊,一个赵云)

    1.首先创建一个策略接口(包含一个每个锦囊都可以执行的算法)

    2.然后写三个实现类,因为有三个妙计

    3.那么计谋有了,需要一个锦囊来存放三个妙计

    4.主人公赵云出场,一次打开妙计

    (自学所用,勿喷)

  • 相关阅读:
    第二次作业
    第一次软件测试
    activity带数据跳转
    学生注册界面
    activity_main
    购物商城
    2021.4.14JSP第七周作业
    2021.4.7jsp第六周作业
    2021.3.26JSP第四次作业
    2021/3/10 第二次JSP作业
  • 原文地址:https://www.cnblogs.com/newbieYi/p/7472703.html
Copyright © 2011-2022 走看看