美文网首页
Java设计模式--策略模式

Java设计模式--策略模式

作者: 留给时光吧 | 来源:发表于2018-05-12 17:01 被阅读0次

它也属于行为型模式的一种,在这种模式下,一个类的行为或其算法可以在运行时更改。简单实现

环境类(对外提供统一接口)

public class Context {
    private Strategy strategy;

    public void setStrategy(Strategy strategy) {
        this.strategy = strategy;
    }

    public int request(int req) {
        return state.doAction(req);
    }
}

策略接口

interface Strategy {
    int doAction(int req);
}

具体策略

public class AddStrategy implements Strategy{

    @Override
    public int doAction(int req) {
        return req + req;
    }
}

public class MultiStrategy implements Strategy{
    @Override
    public int doAction(int req) {
        return req * req;
    }
}

测试类

    public static void main(String[] args) {
        Strategy strategy= new Strategy();
        strategy.setStrategy(new AddStrategy ());
        System.out.println(context.request(10));
        strategy.setStrategy(new MultiStrategy ());
        System.out.println(context.request(10));
    }

相关文章

  • java建造者模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java单例模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java外观模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java适配器模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java观察者模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java代理模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java策略模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • Java 常用设计模式简例

    简述Java常用设计模式 简述Java常用设计模式及设计原则 strate---------策略模式针对接口编程,...

  • 策略模式

    参考资料:漫话:如何给女朋友解释什么是策略模式? 设计模式之策略模式(实例+Demo) Java设计模式(8)——...

  • 学习Head First设计模式Day1

    Java设计模式之设计模式 策略模式:策略模式定义了算法簇,分别封装起来,让他们之间可以互相替换,此设计模式让算法...

网友评论

      本文标题:Java设计模式--策略模式

      本文链接:https://www.haomeiwen.com/subject/izkhdftx.html