常见设计模式之【策略模式】
来源:互联网 发布:淘宝国际版网址 编辑:程序博客网 时间:2024/06/05 18:40
用最常用的例子,最容易懂得demo讲述策略模式:
策略:只要能完成目的,啥方法都ok;
package Strategy;/** *@Description: 策略模式 *@author Potter *@date 2012-8-28 下午01:46:57 *@version V1.0 */public class App {public static void main(String[] args) {Calculator calculator=new Calculator();calculator.setNumber1(20);calculator.setNumber2(30);calculator.setOperator(new Minus());System.out.println("result="+calculator.getResult());}}
计算器类:
package Strategy;/** *@Description:计算器 *@author Potter *@date 2012-8-28 下午01:49:59 *@version V1.0 */public class Calculator {private int number1;private int number2;private Operator operator;public void setNumber1(int number1) {this.number1 = number1;}public void setNumber2(int number2) {this.number2 = number2;}public void setOperator(Operator operator) {this.operator = operator;}public int getResult(){return operator.execute(number1, number2);}}
运算接口(策略接口):
package Strategy;/** *@Description: 运算接口 *@author Potter *@date 2012-8-28 下午01:51:41 *@version V1.0 */public interface Operator {public int execute(int number1,int number2);}
加法类:
package Strategy;/** *@Description: 加法类 *@author Potter *@date 2012-8-28 下午01:55:16 *@version V1.0 */public class Plus implements Operator{@Overridepublic int execute(int number1, int number2) {return number1-number2;}}
减法类:
package Strategy;/** *@Description: 减法类 *@author Potter *@date 2012-8-28 下午01:57:05 *@version V1.0 */public class Minus implements Operator{@Overridepublic int execute(int number1, int number2) {return number1+number2;}}
- 常见设计模式之【策略模式】
- 常见设计模式之策略模式(Strategy)
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- 设计模式之策略模式
- verilog 显示相关
- SDH线路的时隙划分--详解
- 手机网站——移动互联网新趋势
- 充分使用HTML5特性进行搜索引擎优化(SEO)
- 据说看完这21个故事的人,30岁前都成了亿万富翁。你是下一个吗?
- 常见设计模式之【策略模式】
- 关于document.cookie的使用
- AS3 声音控制学习
- windows任务管理器--性能
- Windows7 下Eclipse集成Cygwin配置Android NDK环境编译JNI库(1)
- 树
- 电脑双屏显示
- Sizeof与Strlen的区别与联系
- 判断单链表是否存在环,判断两个链表是否相交问题详解