策略模式

来源:互联网 发布:莱昂纳德14总决赛数据 编辑:程序博客网 时间:2024/06/06 21:45

策略模式

     定义了算法家族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化,不会影响到使用算法的客户(大话设计模式)。

策略模式UML图

      

public class Strategy {    public static void main(String[] args) {        UserStrategy userStrategy=new UserStrategy(new DetailStrategy1());        userStrategy.useStra();        UserStrategy userStrategy2=new UserStrategy(new DetailStrategy2());        userStrategy2.useStra();    }}interface StrategyInterface{    void action();}//具体的策略<离间计>class DetailStrategy1 implements StrategyInterface{    @Override    public void action() {        System.out.println("hi gay,给你个离间计");    }}//具体的策略<美男计>class DetailStrategy2 implements StrategyInterface{    @Override    public void action() {        System.out.println("hi gay,给你个美男计");    }}class UserStrategy{    private StrategyInterface strategyInterface;    public UserStrategy(StrategyInterface strategyInterface) {        this.strategyInterface = strategyInterface;    }    public void useStra(){        strategyInterface.action();    }}

策略模式适用场景

  • 几个类的主要逻辑相同,只在部分逻辑的算法和行为上稍有区别的情况。
  • 有几种相似的行为,或者说算法,客户端需要动态地决定使用哪一种,那么可以使用策略模式,将这些算法封装起来供客户端调用。

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 弘历的下一代皇上 弘历软件公司靠谱吗 弘历股票软件下载 弘历股票软件 弘历软件是正规公司吗 弘历的生母是谁 东亭弘历皇朝酒店 弘历是雍正的儿子吗 弘历是哪个皇上 弘历软件公司 弘历是哪个皇帝 弘历是雍正的第几个儿子 弘历是几阿哥 弘历是谁的儿子 弘历雪景行乐图 雍正的儿子弘历 乾隆帝 雍正为什么不喜欢弘历 雍正为什么想杀弘历 康熙为什么喜欢弘历 弘基 弘基显示器 弘基书香园 弘基笔记本怎么样 弘大 弘宇 弘尚 弘康重疾 弘康保险 弘康保险公司咋样 弘康多倍保重大疾病保险 弘康保险公司可靠吗 弘康人寿靠谱吗 弘康人寿怎么样 弘彬木门 弘德 弘文 爱新觉罗弘 弘时简介 弘旺 弘昼