设计模式之策略模式

Posted 虚幻黑洞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式之策略模式相关的知识,希望对你有一定的参考价值。

策略模式定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。也就是把算法封装起来,方便改变,减少耦合。

组合:把两个类结合起来使用。增加弹性,不仅可以将算法族封装成类,更可以“在运行时动态的地改变行为”,只要组合的行为对象符合接口标准就行了。

比如一个抽象类,加一个接口,接口封装各种方法,抽象类就只被继承主要的公共功能,让其他子类达到更好的代码重用,和实现其他方法。

设计原则:

1.找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。

(封装变化的部分,方便修改和扩展)

2.针对接口编程,而不是针对实现编程,

利用接口代表方法,可以实现多个接口,而继承只能有一个,松耦合,高内聚。

(“有一个”和“是一个”)有一个可以实现接口,动态的绑定或者分离。是一个就是继承,绑定住了,不方便维护。

3.多用组合,少用继承。

 

以上是关于设计模式之策略模式的主要内容,如果未能解决你的问题,请参考以下文章

设计模式之策略模式

《JAVA与模式》之策略模式

设计模式之策略模式

设计模式之-策略模式

设计模式之策略模式

设计模式之策略模式