码迷,mamicode.com
首页 > 其他好文 > 详细

设计模式(十三)策略模式(Strategy)-行为型

时间:2015-05-12 00:13:01      阅读:84      评论:0      收藏:0      [点我收藏+]

标签:设计模式   策略模式   strategy   

前两天去张家界玩了,一直荒废了学习,持续两天都没在状态,今天好好恢复下。发篇博文吧!

策略模式(Strategy)

策略模式就是定义了一系列的算法,并将每一个算法封装起来,而且使他们还可以互相替换。策略模式让算法独立于使用它的客户而独立变化。
策略模式就是提供相同的接口,软件开发人员可以根据相应的接口实现不同的策略。然后根据不同的情况选择不同的策略,从而实现客户端代码不用修改,只需要替换不同的策略实现类即可。

策略模式的实现原理

技术分享
策略模式实现原理

采用策略模式,减少条件语句的输出。

实现

抽象策略类:

public interface Strategy {
    public void operation1();
}

策略类1:

public class Strategy1 implements Strategy {
    public void operation1(){
    }
}

策略类2:

public class Strategy2 implements Strategy {
    public void operation1(){
    }
}

上下文类:

public class Context {
    private Strategy strategy;

    public void operation1(){
        strategy.operation();
    }
}

此处的strategy需要注入进去,可以通过构造函数初始化,也可以通过spring的注入。

设计模式(十三)策略模式(Strategy)-行为型

标签:设计模式   策略模式   strategy   

原文地址:http://blog.csdn.net/dream_angel_z/article/details/45650415

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!