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设计模式中的一种行为模式,它允许在运行时选择算法或策略,从而提供了更大的灵活性。在HeadFirst的《设计模式》一书中,第一章深入浅出地讲解了这一模式,通过实例帮助读者理解其核心概念和应用场景...
根据给定文件内容,以下是关于Java设计模式的知识点说明: 1. 策略模式(Strategy Pattern)是一种行为设计模式,允许在运行时选择算法的行为。策略模式的意图是定义一系列算法,将每个算法封装起来,并使它们可以...
总结来说,策略模式在Java和Android开发中是一种非常实用的设计模式,它通过封装不同的策略,使程序能够根据需要在运行时灵活选择和切换算法,提高了代码的灵活性和可扩展性。理解和掌握策略模式对于提升Android开发...
在这个“java设计模式-策略模式”的示例中,我们将深入探讨如何使用策略模式来实现一个简单的超市促销系统。 策略模式的核心思想是定义一系列的算法,并将每一个算法封装起来,使它们可以互相替换。这使得算法的...
这个“JAVA设计模式-chm版”资源显然包含了关于Java设计模式的详细信息,便于理解和应用。设计模式是对常见问题的解决方案的标准化描述,它们在软件工程中起到了重要的作用,帮助开发者创建可维护、可扩展且易于理解...
综上所述,策略模式在Java编程中是一个非常实用的设计模式,通过将算法封装到独立的策略类中,可以有效地管理和切换不同的行为,从而提升代码的灵活性和可维护性。在压缩包文件"StrategyPatterns例子"中,你可以找到...
在这个“JAVA设计模式例程-策略模式”的压缩包中,我们可以深入探讨策略模式的原理及其应用。 策略模式的核心思想是定义一系列算法,并将每一个算法封装起来,使它们可以相互替换。策略对象的使用让算法的变化独立...
总结来说,Java设计模式中的策略模式是一种非常实用的设计模式,它允许我们在运行时选择和改变算法,提高了代码的可维护性和灵活性。通过观看厉风行老师的教程,你可以深入理解策略模式的原理,并将其运用到实际项目...
这篇名为"JAVA设计模式---100%推荐"的资源,可能是对Java设计模式的深入解析,旨在帮助开发者更好地理解和应用这些模式。 设计模式通常分为三类:创建型、结构型和行为型。创建型模式涉及对象的实例化过程,如单例...
Java 策略模式详解 策略模式是一种行为型设计模式,它允许您定义一系列算法,将每个算法封装起来,并使它们可以互换使用。这种模式使得算法可以独立于使用它们的客户端而变化。在 Java 中,策略模式通常由一个接口...
"策略模式"是其中一种行为设计模式,它允许我们在运行时选择算法或策略,而不是在编译时固定下来。这种模式使得代码更加灵活,易于扩展,同时也提高了可维护性。 在Java中,策略模式通常通过接口和实现类来实现。...
策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。在软件开发中,我们经常遇到需要根据不同的条件或场景来执行不同算法的情况。策略模式提供了一种将算法族封装到各自独立的类中,并在运行时选择具体...
策略模式是Java设计模式中的一种行为模式,它允许在运行时改变对象的行为。在Java开发过程中,策略模式常被用来封装一系列算法,并使它们可以互相替换,从而使算法的变化独立于使用算法的客户。这种模式的核心在于...
9. 策略模式(Strategy):定义一系列算法,并将每个算法封装起来,使它们可以相互替换。 10. 模板方法模式(Template Method):定义一个操作中的算法骨架,而将一些步骤延迟到子类中。 11. 访问者模式(Visitor)...
这个模拟策略游戏可能采用了MVC(Model-View-Controller)或其他设计模式,如Observer或Command模式,来组织代码结构。 3. **游戏逻辑**:策略游戏的核心在于其规则和算法。开发者需要设计一套规则系统,包括游戏...
策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。这种模式允许你使用算法族,而无需在代码中硬编码这些算法。通过将算法封装到具有共同接口的独立对象中,策略模式使得你可以根据需要灵活地切换算法,...
Java设计模式是软件开发中的重要概念,它是一种在特定情境下解决问题的经验总结,可以提高代码的可读性、可维护性和可扩展性。本压缩包包含的源代码涵盖了多个经典的设计模式,接下来将对这些模式进行详细介绍。 1....
《Java设计模式》是刘伟教授的一本关于设计模式的教材,主要面向高等学校的学生和对Java编程有深入兴趣的开发者。设计模式是软件工程中的一种重要思想,它封装了在特定场景下的问题解决方案,可以提高代码的可读性、...
策略模式是设计模式中的一种行为模式,它在Java编程中被广泛应用,特别是在处理算法多样化或需要灵活替换不同行为的场景下。策略模式的核心思想是定义一系列的算法,并将每一个算法封装起来,使它们可以互相替换,让...
Java设计模式是软件工程中的一种最佳实践,它提供了一种在特定情况下解决常见问题的标准化方法。设计模式不是具体的代码或库,而是一种通用解决方案的描述,可以应用于各种编程语言,包括Java。在这个名为"JAVA ...