- 浏览: 171438 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (193)
- Axis2 (10)
- Andriod (2)
- Java (22)
- Eclipse (2)
- 程序人生 (3)
- Windows (1)
- Sql Server 2005/2008 (7)
- 健身 (2)
- Log4j (1)
- Ant (1)
- Fatjar (2)
- 国际化 (1)
- Linux (3)
- JDBC (1)
- Oracle (2)
- 各种报错 (4)
- SWT (5)
- Tomcat (2)
- 车辆管理 (1)
- SVN (2)
- Spring (5)
- 域名服务器 (0)
- HaoWaYa (1)
- FTP (1)
- 集散中心 (1)
- 专业知识 (1)
- 面试准备 (19)
- 设计模式 (22)
- Junit (1)
- 软件下载 (3)
- 深入理解Java虚拟机 (3)
- 数据结构 (4)
- 雅思 托福 (0)
- UML (1)
- Maven (1)
- CV (1)
- ServiceMix (1)
- 电子书 (5)
- Struts1/2 (4)
- DOM W3C DHTML (3)
- Jawr (1)
- LoadRunner (1)
- Java反编译 (0)
- 英语学习 (0)
- 技术书籍 (1)
- Cygwin (0)
- ibatis (1)
- 数据库 (1)
- jQuery (0)
- s (2)
- 源代码项目 (5)
- JSRs (0)
- JCP (0)
- XML (2)
- Dojo (3)
- Effective Java (1)
- 一站到底 (3)
- JavaScript (6)
- DB2 (1)
- 刷机 (1)
- 字符 (1)
- Dynamic Web Project (1)
- 股市日记 (1)
- 代码片段 (0)
- CSS (1)
- PDF (0)
- 英语口语 (1)
- 乒乓球 (1)
- 体检 (0)
- 送花 (0)
- 面试准备-再战江湖 (5)
- ddq (0)
- sss (0)
- ssssss (0)
- 2020面试 (0)
最新评论
-
samsongbest:
Copperfield 写道你的目标很远大,佩服~惭愧,都忘了 ...
人生目标 -
Copperfield:
你的目标很远大,佩服~
人生目标
1.用意
针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。用一句话来说,就是:“准备一组算法,并将每一个算法封装起来,使得它们可以互换。”
2.类图
3.代码
/* * 环境角色 */ public class Context { private Strategy strategy; //策略方法 public void contextInterface() { strategy.strategyInterface(); } public void setStrategy(Strategy s) { this.strategy = s; } } /* * 抽象策略类 */ public abstract class Strategy { public abstract void strategyInterface(); } /* * 具体策略类 */ public class ConcreteStrategy extends Strategy { public void strategyInterface() { S.s("my algorithm..."); } } /* * 测试类 */ public class Test { public static void main(String[] args) { Context c = new Context(); c.setStrategy(new ConcreteStrategy()); c.contextInterface(); } }
z
发表评论
-
22 行为模式 - 调停者(Mediator)模式
2012-08-23 10:21 8321.用意 调停者模式包装了一系列对象相互 ... -
21 行为模式 - 解释器(Interpreter)模式
2012-08-23 10:18 7621.用意 给定一个语言之后,解释器模式可以定 ... -
20 行为模式 - 访问者(Visitor)模式
2012-08-22 10:28 8681.用意 封装一些施加于某种数据结构元素之上的操 ... -
19 行为模式 - 状态(State)模式
2012-08-22 10:25 7551.用意 状态模式允许一个对象在其内部状态改变的时候 ... -
18 行为模式 - 备忘录(Memento)模式
2012-08-22 10:12 847需要跟进多重检查点 ... -
17 行为模式 - 命令(Command)模式
2012-08-20 10:29 5651.用意 命令模式把一个请求或者操作封装到一个对象中。命令模 ... -
16 行为模式 - 责任链(Chain of Responsibility)模式
2012-08-20 10:24 7551.用意 在责任链模式里,很多对象由每一个对象对其下家的引用 ... -
15 行为模式 - 迭代子(Iterator)模式
2012-08-17 10:32 7391.用意 迭代子模式又叫游标模式,可以顺序地访问一个聚集中的 ... -
14 行为模式 - 观察者(Observer)模式
2012-08-09 10:27 8081.用意 观察者模式定义了一种一对多的依赖关系,让多个观察者 ... -
13 行为模式 - 模板方法(Template Method)模式
2012-08-09 10:21 6911.用意 准备一个抽象类,将部分逻辑以具体方法以及具体构造子 ... -
11 结构模式 - 桥梁(Bridge)模式
2012-08-01 10:01 7361.用意 2.类图 3.代码 z 1.用意 将 ... -
10 结构模式 - 门面(Facade)模式
2012-07-31 13:52 6841.含义 外部与一个子系统的通信必须通过一个统一的门面对象进 ... -
09 结构模式 - 享元(Flyweight)模式
2012-07-31 13:47 8101.含义 享元模式以共享的方式高效地支持大量的细粒度对象。 ... -
8 代理(Proxy)模式
2012-07-31 09:48 8981.含义 代理模式给某一个对象提供一个代理对象,并由代理对象 ... -
7 装饰(Decorator)模式
2012-07-27 14:03 7021.含义 装饰模式又名包装(Wrapper)模式,以对客户端 ... -
6 合成(Composite)模式
2012-07-27 14:02 7711.含义 合成模式把部分和整体的关系用树结构表示出来。合成模 ... -
5 适配器(Adapter)模式
2012-07-27 13:52 7371. 含义 把一个类的接口变换成客户端所期待的另一种接口,从 ... -
4 原始模型(Prototype)模式
2012-07-27 10:49 7941. 含义 通过给出一个原型对象来指明所要创建的对象的类型, ... -
3 建造(Builder)模式
2012-07-27 09:44 7141.含义:建造模式可以将一个产品的内部表象与产品的生成过程分割 ... -
1 抽象工厂(Abstract Factory)模式
2012-07-26 17:54 7371.类图 2.类 Creator ...
相关推荐
c++设计模式-行为型模式-策略模式;qt工程;c++简单源码; 策略(Strategy)模式的定义:该模式定义了一系列算法,并将每个算法封装起来,使它们可以相互替换,且算法的变化不会影响使用算法的客户。策略模式属于...
策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。这种模式允许你使用算法族,而无需在代码中硬编码这些算法。通过将算法封装到具有共同接口的独立对象中,策略模式使得你可以根据需要灵活地切换算法,...
首先,策略模式由三个主要组成部分构成:上下文(Context)、策略(Strategy)接口和具体策略(Concrete Strategy)。上下文是使用策略的对象,它维护一个对策略的引用,并调用策略的接口来执行算法。策略接口定义了一组...
在这个"php设计模式-策略模式-例题学习"的例子中,我们将深入理解策略模式的运用及其在PHP中的实现。 首先,让我们来看看核心的类和接口: 1. `HandStrategyInterface.php`: 这个文件定义了一个接口`...
C#面向对象设计模式 (行为型模式) Strategy 策略模式 视频讲座下载
策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。在Java中,策略模式通常用于替换硬编码的条件语句,使代码更加灵活、可扩展和易于维护。下面我们将详细探讨策略模式的核心概念、实现方式以及在实际...
策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。在C++中,策略模式主要用于封装一系列算法,并让它们之间可以互相替换,使得算法的变化独立于使用算法的客户。这种模式通常涉及三个主要角色:策略...
【策略模式】是一种设计模式,它的核心思想是将不同的算法或行为封装成独立的类,这些类具有统一的接口,从而使客户端可以灵活地选择并使用其中的任何一种算法,而无需关心具体实现的细节。这种模式可以有效地避免...
"策略者"(Strategy)设计模式是其中的一种行为模式,它定义了一系列算法,并将每个算法封装起来,使它们可以相互替换。这种模式让算法的变化独立于使用算法的客户。 在《设计模式-策略者》这篇文章中,作者深入浅...
策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。在软件开发中,我们经常遇到需要根据不同的条件或场景来执行不同算法的情况。策略模式提供了一种将算法族封装到各自独立的类中,并在运行时选择具体...
策略模式是设计模式中的一种行为模式,它的主要目的是使算法可以在运行时动态选择。在这个“java设计模式-策略模式”的示例中,我们将深入探讨如何使用策略模式来实现一个简单的超市促销系统。 策略模式的核心思想...
策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。在软件开发中,我们经常遇到需要在不同时间或根据不同条件执行不同算法的情况。策略模式允许我们将算法封装到独立的可互换的策略类中,使得算法的变化...
具体到这个压缩包文件"设计模式-策略模式",可能包含的是一个示例项目或者一系列的代码片段,用于演示如何在iOS平台上实现策略模式。这些文件可能包括以下部分: 1. **策略接口**:定义了执行特定任务的协议,例如`...
这种类型的设计模式属于行为模式。 在策略模式中,我们创建表示各种策略的对象和一个行为根据策略对象改变的上下文对象。策略对象改变上下文对象的执行算法。 策略模式的主要优点包括: 1. 封装了变化:不同的策略...
策略模式是Java设计模式中的一种行为模式,它允许在运行时选择算法或策略,从而提供了更大的灵活性。在HeadFirst的《设计模式》一书中,第一章深入浅出地讲解了这一模式,通过实例帮助读者理解其核心概念和应用场景...
Strategy模式是一种行为设计模式,它使你能在运行时改变对象的行为。这种模式的核心思想是将算法族封装在独立的对象中,使得它们可以互换使用,让算法的变化独立于使用算法的客户。 在上述的国际电子商务系统案例中...
策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。在软件开发中,我们经常遇到需要根据不同的条件或场景来执行不同算法的情况。策略模式提供了一种将算法族封装到各自独立的类中,并让它们之间可以互相...
策略模式是一种行为型设计模式,它允许您定义一系列算法,将每个算法封装起来,并使它们可以互换使用。这种模式使得算法可以独立于使用它们的客户端而变化。在 Java 中,策略模式通常由一个接口和多个实现该接口的类...
策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。在软件开发中,我们经常遇到需要根据不同的条件或时间点执行不同算法的情况。策略模式允许我们将这些算法封装成独立的类,使得它们可以互换,从而提高...
### 设计模式培训-strategy #### 一、设计模式概览 设计模式是软件工程领域的一个重要概念,它提供了一套解决常见问题的有效方法。在软件开发的过程中,开发者经常会遇到相似的问题,这些问题往往有着类似的解决...