- 浏览: 428897 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (170)
- java (77)
- javascript (5)
- jsp (1)
- servlet (6)
- struts (8)
- hibernate (3)
- spring (4)
- ajax (5)
- jquery (3)
- apache cxf (0)
- ext.js (1)
- hadoop (0)
- android (0)
- html5 (2)
- linux (5)
- flex (1)
- tomcat (1)
- jboss (0)
- nginx (0)
- mysql (16)
- sql server (3)
- oracle (4)
- div+css (0)
- mybatis (4)
- design patterns (22)
- xml (2)
- postgresql (3)
- velocity (1)
- freemarker (1)
- kendo-ui (2)
- ibatis (1)
- socket (1)
- C and C++ (1)
- C# (2)
- 程序设计----算法 (0)
- jersey (1)
- dd (0)
- perl (1)
- shell (0)
最新评论
-
书策稠浊:
兄弟,这tm是Java?
java调用百度地图和谷歌地图 -
fengyunlouyanyu:
jquery----删除指定id的div下的img -
yangjianzhouctgu:
Neoman 写道hi,我看你引入了kendo.web.min ...
kendo-ui中kendoGrid的用法 -
Neoman:
hi,我看你引入了kendo.web.min.js 这个js, ...
kendo-ui中kendoGrid的用法 -
yangjianzhouctgu:
llscp 写道这是JS吧...对的呀
java调用百度地图和谷歌地图
Group.java代码如下:
RequirementGroup.java代码如下:
PageGroup.java代码如下:
CodeGroup.java代码如下:
Command.java代码如下:
AddRequirementCommand.java代码如下:
DeletePageCommand.java代码如下:
Invoker.java代码如下:
Client.java代码如下:
运行结果如下:
package com.designPattern.command; /** * * @author yangjianzhou * 项目组分成了三个组,每个组都要接受增删改的命令 */ public abstract class Group { public abstract void find(); public abstract void add(); public abstract void delete(); public abstract void change(); public abstract void plan(); }
RequirementGroup.java代码如下:
package com.designPattern.command; public class RequirementGroup extends Group{ @Override public void find() { System.out.println("找到需求组!"); } @Override public void add() { System.out.println("客户要求增加一项需求!"); } @Override public void delete() { System.out.println("客户要求删除一项需求!"); } @Override public void change() { System.out.println("客户要求改变一项需求!"); } @Override public void plan() { System.out.println("客户要求变更需求计划!"); } }
PageGroup.java代码如下:
package com.designPattern.command; public class PageGroup extends Group{ @Override public void find() { System.out.println("找到美工组!"); } @Override public void add() { System.out.println("客户要求增加一个页面!"); } @Override public void delete() { System.out.println("客户要求删除一个页面!"); } @Override public void change() { System.out.println("客户要求改变一个页面!"); } @Override public void plan() { System.out.println("客户要求页面变更计划!"); } }
CodeGroup.java代码如下:
package com.designPattern.command; public class CodeGroup extends Group{ @Override public void find() { System.out.println("找到代码组!"); } @Override public void add() { System.out.println("客户要求增加一项功能!"); } @Override public void delete() { System.out.println("客户要求删除一项功能!"); } @Override public void change() { System.out.println("客户要求改变一项功能!"); } @Override public void plan() { System.out.println("客户要求变更功能计划!"); } }
Command.java代码如下:
package com.designPattern.command; /** * * @author yangjianzhou * 一系列命令 */ public abstract class Command { /** * 命令执行者 */ protected RequirementGroup rg = new RequirementGroup(); protected PageGroup pg = new PageGroup(); protected CodeGroup cg = new CodeGroup(); public abstract void execute(); }
AddRequirementCommand.java代码如下:
package com.designPattern.command; public class AddRequirementCommand extends Command{ @Override public void execute() { super.rg.find(); super.rg.add(); super.rg.plan(); } }
DeletePageCommand.java代码如下:
package com.designPattern.command; public class DeletePageCommand extends Command{ @Override public void execute() { super.pg.find(); super.pg.delete(); super.pg.plan(); } }
Invoker.java代码如下:
package com.designPattern.command; /** * * @author yangjianzhou * 命令接受者 */ public class Invoker { private Command command; public void setCommand(Command command) { this.command = command; } public void action(){ this.command.execute(); } }
Client.java代码如下:
package com.designPattern.command; public class Client { public static void main(String[] args) { Invoker invoker = new Invoker(); System.out.println("==================客户要求增加一项需求==================="); Command command = new AddRequirementCommand(); invoker.setCommand(command); invoker.action(); System.out.println("==================客户要求删除一个页面==================="); command = new DeletePageCommand(); invoker.setCommand(command); invoker.action(); } }
运行结果如下:
==================客户要求增加一项需求=================== 找到需求组! 客户要求增加一项需求! 客户要求变更需求计划! ==================客户要求删除一个页面=================== 找到美工组! 客户要求删除一个页面! 客户要求页面变更计划!
发表评论
-
设计模式----中介者模式(demiator pattern)
2013-07-21 22:55 934AbstractMediator.java代码如下: pa ... -
设计模式----原型模式(prototype pattern)
2013-07-21 22:51 639AdvTemplate.java代码如下: package ... -
设计模式----状态模式(state pattern)
2013-07-21 22:48 1205LiftState.java代码如下: package ... -
设计模式----访问者模式(visitor pattern)
2013-07-21 22:44 976IVisitor.java代码如下: package co ... -
设计模式----观察者模式(observer)
2013-07-20 19:53 1072这里采用两种方式实现观察者模式:第一种方式为完全自己写, ... -
设计模式----组合模式(composite)
2013-07-20 16:13 932该设计模式是以公司的组织结构为背景的 Crop.java代码 ... -
设计模式----迭代器模式(Iterator)
2013-07-20 15:59 919IProject.java代码如下: package co ... -
设计模式----装饰者模式(decorator pattern)
2013-07-15 09:08 1028SchoolReport.java代码如下: packag ... -
设计模式----桥梁模式(bridge pattern)
2013-07-14 22:21 1184Product.java代码如下: package com ... -
设计模式----模板方法模式(template method pattern)
2013-07-14 17:00 1149HummerModel.java代码如下: packag ... -
设计模式----适配器模式(adapter)
2013-07-14 13:37 866IUserInfo.java代码如下: package c ... -
设计模式----门面模式(facade)
2013-07-14 13:30 948LetterProcess.java代码如下 ... -
设计模式----抽象工厂模式(abstract factory pattern)
2013-07-13 23:09 914Human.java代码如下: package com. ... -
设计模式----工厂方法模式(factory method pattern)
2013-07-10 22:19 1083给定一个工厂类,用这个工厂类造出一堆对象来,这些对象对应的类实 ... -
设计模式----多例模式(Multition)
2013-07-02 22:47 1035Emperor.java 代码如下: ... -
设计模式----单例模式(singleton)
2013-06-30 22:17 757单例就是唯一的意思。 第一种单例实现方式(在多线程环境中存在 ... -
设计模式----代理模式(proxy)
2013-06-30 22:02 963代理模式主要使用了java ... -
设计模式----策略模式(strategy)
2013-06-29 22:17 1092本文参考别人设计模式的一个例子。 关于诸葛亮的三个锦囊妙计的 ... -
装饰着模式(decorator)
2012-09-09 21:51 1010一下代码就是运用了装饰者模式: package com.ba ... -
观察者模式(observer)
2012-09-09 19:36 944设计模式中观察者模式的实现有很多方式,这里列出两种实现方式 1 ...
相关推荐
设计模式(18)-Command Pattern 设计模式(17)-Chain of Responsibility Pattern 设计模式(16)-Bridge Pattern 设计模式(15)-Facade Pattern 设计模式(14)-Flyweight Pattern C#设计模式(13)-Proxy ...
命令模式是一种行为设计模式,它将请求封装成独立的对象,使得可以使用不同的请求、队列请求、记录请求历史以及支持可撤销的操作。这种模式在软件工程中被广泛应用,尤其是在需要解耦请求发起者和接收者时,提高了...
代理模式(Proxy Pattern)、单例模式(Singleton Pattern)、工厂方法模式...命令模式(Command Pattern)、装饰模式(Decorator Pattern)、迭代器模式(Iterator Pattern)、组合模式(Composite Pattern)、观察者...
命令模式-Command Pattern 请求发送者与接收者解耦——命令模式(一) 请求发送者与接收者解耦——命令模式(二) 请求发送者与接收者解耦——命令模式(三) 请求发送者与接收者解耦——命令模式(四) 请求发送者...
命令模式(Command Pattern)是一种行为型设计模式,它将请求封装为对象,从而使您可以使用不同的请求、队列请求或日志请求,并支持可撤销操作。命令模式通常用于实现操作的解耦,使得发送者和接收者之间不直接关联...
命令模式(Command Pattern)是一种行为设计模式,它将请求封装为一个对象,使得你可以使用不同的请求、队列请求,或者支持可撤销的操作。在Java中实现命令模式,我们可以利用面向对象编程的特性来构建系统,使得...
**命令模式(Command Pattern)** 是一种行为设计模式,它将请求封装成对象,从而使你能够用不同的请求对客户端进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。 在软件开发中,特别是面向对象编程语言...
命令模式(Command Pattern)是一种行为设计模式,它允许将请求封装为一个对象,从而使不同的请求可以使用不同的参数进行参数化,队列或日志请求,以及支持可撤销的操作。在 Java 中,命令模式的实现通常涉及一个...
命令模式是一种行为设计模式,它将请求封装为一个对象,从而使你可用不同的请求对客户进行参数化,对请求排队或记录请求日志,以及支持可撤销的操作。在Head First 设计模式这本书中,第六章详细介绍了如何在C++中...
"Design Pattern"这个压缩包文件很可能包含了一些关于设计模式的实例和文档,特别是提到了"design-pattern\doc\api"目录下的"index.html",这可能是一个交互式的文档或者教程,通过实例帮助开发者更好地理解设计模式...
包括责任链模式(Chain of Responsibility)、命令模式(Command)、解释器模式(Interpreter)、迭代器模式(Iterator)、中介者模式(Mediator)、备忘录模式(Memento)、观察者模式(Observer)、状态模式...
### 命令模式(Command Pattern) #### 概述 命令模式是一种行为设计模式,它将请求封装成对象,以便使用不同的请求对客户端进行参数化。该模式有助于将发送请求的对象与执行请求的对象解耦。 #### 核心概念 在...
- 命令模式(Command):将请求封装为一个对象,以便使用不同的请求、队列或者日志请求,也可以支持可撤销的操作。 - 解释器模式(Interpreter):给定一种语言,定义它的文法表示,并提供一个解释器来处理该语言...
15. **命令模式(Command)**:将请求封装为一个对象,以便使用不同的请求、队列请求、或者支持撤销操作。C++11的`std::function`和`std::unique_ptr`可用于实现命令对象。 16. **责任链模式(Chain of ...
- **命令**(Command):将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化。 - **解释器**(Interpreter):给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释...
- **命令模式(Command)**:将一个请求封装为一个对象,从而使用户可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。 - **迭代器模式(Iterator)**:提供一种方法顺序访问一个聚合...
设计模式是软件工程中经过长期实践验证的有效解决方案模板,它们为常见的编程问题提供了...在压缩包中的"DesignPattern-master"文件夹中,你将找到每个设计模式的详细实现示例,这将是你学习和理解设计模式的宝贵资源。
在这个名为"JAVA design pattern-java设计模式"的CHM文件中,我们可能找到了关于如何在Java开发中应用设计模式的详细信息。 设计模式通常分为三大类:创建型、结构型和行为型。创建型模式关注对象的创建,如单例...
行为型模式如策略(Strategy)、模板方法(Template Method)、观察者(Observer)、命令(Command)、迭代器(Iterator)、访问者(Visitor)、备忘录(Memento)、状态(State)、职责链(Chain of Responsibility...
- 命令模式(Command):将请求封装为一个对象,以便使用不同的请求、队列或者日志请求,以及支持可撤销的操作。 - 解释器模式(Interpreter):给定一种语言,定义它的文法表示,并提供一个解释器来处理这种语言...