策略模式(Strategy):
它定义了算法家族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化,不会影响到使用算法的客户。
以简单计算为例,要求用加,减,乘,除,来求两个数的运算;
1。UML图 -------------清晰的类关系
2,定义一个Strategy(策略类),在这个策略类中定义一个公用的方法getResult()
2,为每中算法定义自己的具体策略类,实现抽象策略类的公共接口
3.定义Context类,在这个类中维护着一个Strategy的引用
4,在客户端定义一个Calculate类,用来调用Context以实现策略模式