策略模式
Posted 酒皇
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了策略模式相关的知识,希望对你有一定的参考价值。
策略模式是一种简单的模式,利用继承(实现)关系。
对同一个功能产生不同的子类,对某个方法进行不同的策略
代码如下
//接口类 public interface Strategy { public int reduce(int pay); } //实现1,满五百减两百 public class StrategyA implements Strategy { @Override public int reduce(int pay) { if(pay>500){ pay-=200; } return pay; } } //实现2 满一千打八折 public class StrategyB implements Strategy{ @Override public int reduce(int pay) { if(pay>1000){ pay*=0.8; } return pay; } } //实现3 原价 public class StrategyC implements Strategy{ @Override public int reduce(int pay) { return pay; } } //对某次付款进行促销 public class Context { public static void main(String[] args) { int pay=1850; Strategy s1=new StrategyA(); Strategy s2=new StrategyB(); Strategy s3=new StrategyC(); pay=s2.reduce(pay); pay=s1.reduce(pay); pay=s3.reduce(pay); System.out.println(pay); } }
这样我们通过替换显示层的new对象就可以控制某个功能的不同实现了。。。。。
一般Spring
以上是关于策略模式的主要内容,如果未能解决你的问题,请参考以下文章