`
men4661273
  • 浏览: 275809 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java设计模式-Strategy(策略)模式

    博客分类:
  • java
阅读更多
    strategy定义
    Strategy 是属于设计模式中 对象行为型模式,主要是定义一系列的算法,把这些算法一个个封装成单独的类.
    这里以字符串格式化为例子:

   package strategy;
//算法接口类,声明通用的方法
public interface Replace {

	public String replace(String s);
}




  package strategy;
//算法类A,实现接口的方法
public class ReplaceA implements Replace {

	public String replace(String s) {
		// TODO Auto-generated method stub
		return s.toLowerCase();
	}

}



package strategy;
//算法类B,实现接口的方法
public class ReplaceB implements Replace {

	public String replace(String s) {
	
		return s.toUpperCase();
	}

}


 
package strategy;
//策略管理类,指定使用策略,操作指定策略的算法
public class Context {
	
	private Replace replace;
	
	public Replace getReplace() {
		return replace;
	}

	public void setReplace(Replace replace) {
		this.replace = replace;
	}



	public String format(String s){
		
		return replace.replace(s);
	}

}





package strategy;
//测试类
public class Test {

	public static void main(String[] args) {
		Replace a = new ReplaceA();
		Replace b = new ReplaceB();
		
		Context c = new Context();
		//使用过程中,动态的更改策略算法,为策略的更改提供方便,客户端选择算法更容易
		c.setReplace(a);
		System.out.println(c.format("abcdEFG"));
		c.setReplace(b);
		System.out.println(c.format("abcdEFG"));
		
	}
}






  使用Strategy 模式可以在用户需要变化时,修改量很少,而且快速.



  • 大小: 2.3 KB
  • 大小: 32.8 KB
分享到:
评论

相关推荐

    Java 设计模式-策略模式(Strategy)Android讲解

    设计模式-策略模式(Strategy)结合Android小知识讲解,简单明了

    java设计模式---诙谐易懂版

    第 1 章 策略模式【Strategy Pattern】 刘备要到江东娶老婆了,走之前诸葛亮给赵云(伴郎)三个锦囊妙计,说是按天机拆开解决棘手问题, 嘿,还别说,真是解决了大问题,搞到最后是周瑜陪了夫人又折兵呀,那咱们先看...

    设计模式--策略模式StrategyPattern

    设计模式--策略模式StrategyPattern

    【Java设计模式】(2)策略模式Strategy

    【Java设计模式】(2)策略模式Strategy

    Java设计模式 设计模式介绍

    2、爪哇语言抽象工厂创立性模式介绍 3、工厂方法创立性模式介绍 4、单态创立性模式介绍 5、单态创立性模式介绍 6、观察者模式介绍7、责任链模式 8、设计模式之Observer 9、设计模式之Strategy(策略) 10、设计模式之...

    JAVA设计模式chm文档

    创建模式: 设计模式之Factory 设计模式之Prototype(原型) 设计模式之Builder 设计模式之Singleton(单态) ...设计模式之Strategy(策略) 设计模式之Mediator(中介者) 设计模式之Interpreter(解释器) 设计模式之Visitor

    《JAVA与模式》之策略模式

    javase 设计模式的strategy pattern《JAVA与模式》之策略模式详解

    JAVA设计模式之行为模式

    这是JAVA设计模式中属于行为模式的部分,包括Template(模板模式)、Chain of Responsibility(责任链模式)、Memento(纪念品模式)、Mediator(中介模式)、Strategy(策略模式)、State 、Observer(观察者模式)、Visitor...

    33种JAVA设计模式DEMO

    策略模式(Strategy Pattern) 模板模式(Template Pattern) 访问者模式(Visitor Pattern) 4 J2EE 模式 这些设计模式特别关注表示层。这些模式是由 Sun Java Center 鉴定的。 MVC 模式(MVC Pattern) 业务代表...

    [Java设计模式(第2版)(Design.Patterns.in.Java).John.Metsker

    《java设计模式(第2版)》通过一个完整的java项目对经典著作design patterns一书介绍的23种设计模式进行了深入分析与讲解,实践性强,却又不失对模式本质的探讨。本书创造性地将这些模式分为5大类别,以充分展现各个...

    java设计模式之策略模式

    java设计模式之策略模式 内含策略模式讲解ppt 自己根据ppt写了一个小例子 先不用策略模式 后用策略模式 形成了鲜明对比 对初学者很有用

    Java高手真经 - Java Web系统设计与架构 源代码(一)设计模式

    Java高手真经 - Java Web系统设计与架构 源代码(一)设计模式 (3)设计模式样例(24个讲解样例程序) pattern/src/principle/liskovsubstitution//10.3.2里氏代换原则 pattern/src/creation/factorymethod //11.1...

    Java设计模式之策略模式(Strategy模式)介绍

    主要介绍了Java设计模式之策略模式(Strategy模式)介绍,Strategy是属于设计模式中对象行为型模式,要是定义一系列的算法,这些算法一个个封装成单独的类,需要的朋友可以参考下

    java版本二十三种设计模式.zip

    - 策略模式(Strategy) - 责任链模式(Chain of Responsibility) - 中介者模式(Mediator) - 访问者模式(Visitor) - 命令模式(Command) - 解释器模式(Interpreter) - 迭代器模式(Iterator) - 备忘录模式...

    java设计模式教程+源代码

    AbstractFactory ( 抽象工厂 ) FactoryMethod ( 工厂方法 ) Singleton ( 单态模式 ) Builder ( 建造者模式 ) ...Strategy ( 策略模式 ) TemplateMethod ( 模板方法 ) Visitor ( 访问者模式 )

    java设计模式期末考试选择题100道

    适合Java设计模式期末考试选择题复习,形式如下: 10.(单选题)Facade(外观)模式的意图是 正确答案: A A.希望简化现有系统的使用方法,你需要定义自己的接口 B.将一个无法控制的现有对象与一个特定借口相匹配。 C....

    用Java实现23种设计模式

    用Java实现23种设计模式 1. 创建型模式 工厂模式(Factory Pattern) 抽象工厂模式(Abstract Factory Pattern) 单例模式(Singleton Pattern) 建造者模式(Builder Pattern) 原型模式(Prototype Pattern)...

    研磨设计模式-part2

    第17章 策略模式(Strategy) 第18章 状态模式(State) 第19章 备忘录模式(Memento) 第20章 享元模式(Flyweight) 第21章 解释器模式(Interpreter) 第22章 装饰模式(Decorator) 第23章 职责链模式...

    研磨设计模式-part4

    第17章 策略模式(Strategy) 第18章 状态模式(State) 第19章 备忘录模式(Memento) 第20章 享元模式(Flyweight) 第21章 解释器模式(Interpreter) 第22章 装饰模式(Decorator) 第23章 职责链模式...

    研磨设计模式-part3

    第17章 策略模式(Strategy) 第18章 状态模式(State) 第19章 备忘录模式(Memento) 第20章 享元模式(Flyweight) 第21章 解释器模式(Interpreter) 第22章 装饰模式(Decorator) 第23章 职责链模式...

Global site tag (gtag.js) - Google Analytics