定义
定义一系列的算法类,将每一个算法类封装起来,并让他们可以互相替换,将算法的定义和使用分开。
UML图

应用
JDK中的Comparator比较器。
比如有一个Student学生类,有name和age两个属性。如果有个需求需要打印学生名单,并按照字母顺序排序,可以使用Comparator接口并在内部使用name进行比较即可。 如果哪一天需要按照年龄进行排序,那么只需要修改Comparator即可,也就是使用一个新的策略,其它完全不变。
定义一系列的算法类,将每一个算法类封装起来,并让他们可以互相替换,将算法的定义和使用分开。
JDK中的Comparator比较器。
比如有一个Student学生类,有name和age两个属性。如果有个需求需要打印学生名单,并按照字母顺序排序,可以使用Comparator接口并在内部使用name进行比较即可。 如果哪一天需要按照年龄进行排序,那么只需要修改Comparator即可,也就是使用一个新的策略,其它完全不变。
本文标题:策略模式
本文链接:https://www.haomeiwen.com/subject/nzqszttx.html
网友评论