首页 > 其他 > 详细

StrategyPattern (策略模式)

时间:2016-12-28 19:37:22      阅读:190      评论:0      收藏:0      [点我收藏+]
/**
 * 策略模式
 * @author TMAC-J
 * 根据环境的不同选择不同的策略,把策略用接口抽象出来
 */
public class StrategyPattern {
    
    interface Strategy{
        void operate();
    }
    
    public class StrategyA implements Strategy{

        @Override
        public void operate() {
            System.out.println("策略A");
        }
        
    }
    
    public class StrategyB implements Strategy{
        
        @Override
        public void operate() {
            System.out.println("策略B");
        }
        
    }
    
    public class Context{
        
        private Strategy strategy;
        
        public Context(Strategy strategy) {
            this.strategy = strategy;
        }
        
        public void operate(){
            strategy.operate();
        }
        
    }
    
    public void test(){
        Context context1 = new Context(new StrategyA());
        context1.operate();
        Context context2 = new Context(new StrategyB());
        context2.operate();
    }
    
}

 

StrategyPattern (策略模式)

原文:http://www.cnblogs.com/yzjT-mac/p/6230312.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!