使用策略模式实现加减乘除运算
2014-03-11 16:06
387 查看
public interface Strategy { public int method(int x,int y); } //抽象策略角色,由抽象类或者接口实现 public class AddStrategy implements Strategy { public int method(int x,int y) { return x+y; } } //加法的实现类 public class SubStrategy implements Strategy { public int method(int x,int y) { return x-y; } } //减法的实现类 public class MulityStrategy implements Strategy { public int method (int x,int y) { return x*y; } } //乘法的实现类 public class ChuStrategy implements Strategy { public int method(int x,int y) { return x/y; } } //除法的实现类 public class MediaClass { private Strategy strategy; public MediaClass(Strategy strategy) { this.strategy=strategy; } public int calculate(int x,int y) { return strategy.method(x, y); } } //环境角色,具有策略类的引用,供给客户调用!!! public class CalcuTest { public static void main(String args[]) { MediaClass add=new MediaClass(new AddStrategy()); int addvalue=add.calculate(5,6); System.out.println(addvalue); MediaClass sub=new MediaClass(new SubStrategy()); int subvalue=sub.calculate(5,6); System.out.println(subvalue); MediaClass mul=new MediaClass(new MulityStrategy()); int mulvalue=mul.calculate(5,6); System.out.println(mulvalue); MediaClass chu=new MediaClass(new ChuStrategy()); int chuvalue=chu.calculate(5,6); System.out.println(chuvalue); } } //客户端调用
相关文章推荐
- 使用Object-c类实现简单地加减乘除运算
- 使用 HibernateTemplate 实现分页查询 和其使用的策略模式
- 设计模式之使用Enum来实现strategy(策略模式系列2)
- 使用BigDecimal进行精确运算(实现加减乘除运算) 详细出处参考:http://www.jb51.net/article/43513.htm
- 使用工厂模式、策略模式实现BASE64,MD5,SHA,HMAC,DES各种加密算法
- java实现策略模式使用示例
- C++语言使用字符数组实现大数加减乘除运算
- 策略模式(使用Java实现)
- 设计模式实战(一)——使用策略模式(strategy pattern)实现多关键字排序
- 不使用 +-×÷ 运算符来实现 加减乘除 四项运算
- 设计模式实战(一)——使用策略模式(strategy pattern)实现多关键字排序
- 使用策略模式实现报警服务示例详解(短信报警)
- 新浪面试题:只允许使用++操作符实现加减乘除运算(c语言版)
- java实现四则运算,难点主要在理解加减乘除优先级以及使用递归
- java8——使用lambda和枚举实现简洁、可读性良好的策略模式
- 【摘录】使用实体框架、Dapper和Chain的仓储模式实现策略
- 设计模式-代理模式与适配器模式实现代码重用以及策略模式的使用
- 不使用 +-×÷ 运算符来实现 加减乘除 四项运算
- 使用位操作实现加减乘除运算
- MultipartFile-使用策略模式实现可拓展文件分类上传