java之设计模式--->策略模式
2015-12-17 19:00
726 查看
程序实例:
package 策略模式;
public interface Strategy {
public int cal(int a,int b);
}
package 策略模式;
public class Add implements Strategy{
@Override
public int cal(int a,int b){
return a+b;
}
}
package 策略模式;
public class sub implements Strategy{
@Override
public int cal(int a,int b){
return a-b;
}
}
package 策略模式;
public class mul implements Strategy{
@Override
public int cal(int a,int b){
return a*b;
}
}
package 策略模式;
public class Div implements Strategy{
@Override
public int cal(int a,int b){
return a/b;
}
}
package 策略模式;
public class Enverionment {
private Strategy strategy;
public Enverionment(Strategy strategy){
this.strategy=strategy;
}
public Strategy getStrategy() {
return strategy;
}
public void setStrategy(Strategy strategy) {
this.strategy = strategy;
}
public int cal(int a,int b){
return strategy.cal(a, b);
}
}
package 策略模式;
public class Kehuduan {
public static void main(String[] args){
Strategy add=new Add();
Enverionment evn=new Enverionment(add);
System.out.println(evn.cal(34, 23));
Strategy sub=new sub();
Enverionment evn1=new Enverionment(sub);
System.out.println(evn1.cal(45, 23));
Strategy mul=new mul();
Enverionment evn2=new Enverionment(mul);
System.out.println(evn2.cal(45, 23));
Strategy Div=new Div();
Enverionment evn3=new Enverionment(Div);
System.out.println(evn3.cal(45, 23));
}
}
相关文章推荐
- 【Java EE 学习 73】【数据采集系统第五天】【参与调查】【导航处理】【答案回显】【保存答案】
- heroku部署java web项目
- Eclipse的设置小细节提高开发效率
- springMVC 接收表单参数的五种方法
- Java 标识符命名规范
- Java泛型总结
- springMVC3学习(十二)--文件上传优化CommonsMultipartResolver
- Hadoop集群链接_Eclipse开发环境:成功运行mapreduce所遇问题
- Java基础--面向对象(继承、抽象类、接口)
- 【Struts2】文件上传
- java面向对象
- java类型转化之Hbase ImmutableBytesWritable类型转String
- spring加载配置文件的方式
- Spring缓存中获取单例bean
- java中的内部类程序实例
- eclipse/MyEclipse 日期格式、注释日期格式、时区问题
- spring aop横切对象、切面参数传递
- SpringMVC学习笔记001-服务器端获取JSON字符串并解析
- ECharts Java 动态加载数据,echartsjava
- java中反射的原理