您的位置:首页 > 其它

【设计模式】策略模式

2016-10-09 16:47 155 查看
一、策略模式原则:

①封装变化:把会变化的部分取出并封装起来,以便以后可以轻易地改动或扩充此部分,而不影响不需要变化的其他部分。

②针对接口编程,而不是针对实现编程。

③多用组合,少用继承。

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

二、状态模式:

允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。

三、策略模式和状态模式的异同点:

1、策略模式和状态模式的类图是一样的。

        


策略模式允许对象能够通过 组合和委托来拥有不同的行为或算法。有一个可以实例化的类,通常给他一个实现某个行为的策略对象。

状态模式:当Context对象被创建之后,我可以告诉他们从什么状态开始,然后他们会随着时间而改变自己的状态。Context对象会随着时间而改变状态,而任何的状态改变都是定义好的。换句话或,“改变行为”这件事是建立在我的方案中的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: