- 浏览: 421839 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (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 893AbstractMediator.java代码如下: pa ... -
设计模式----原型模式(prototype pattern)
2013-07-21 22:51 599AdvTemplate.java代码如下: package ... -
设计模式----状态模式(state pattern)
2013-07-21 22:48 1156LiftState.java代码如下: package ... -
设计模式----访问者模式(visitor pattern)
2013-07-21 22:44 933IVisitor.java代码如下: package co ... -
设计模式----观察者模式(observer)
2013-07-20 19:53 1032这里采用两种方式实现观察者模式:第一种方式为完全自己写, ... -
设计模式----组合模式(composite)
2013-07-20 16:13 895该设计模式是以公司的组织结构为背景的 Crop.java代码 ... -
设计模式----迭代器模式(Iterator)
2013-07-20 15:59 881IProject.java代码如下: package co ... -
设计模式----装饰者模式(decorator pattern)
2013-07-15 09:08 982SchoolReport.java代码如下: packag ... -
设计模式----桥梁模式(bridge pattern)
2013-07-14 22:21 1142Product.java代码如下: package com ... -
设计模式----模板方法模式(template method pattern)
2013-07-14 17:00 1116HummerModel.java代码如下: packag ... -
设计模式----适配器模式(adapter)
2013-07-14 13:37 829IUserInfo.java代码如下: package c ... -
设计模式----门面模式(facade)
2013-07-14 13:30 908LetterProcess.java代码如下 ... -
设计模式----抽象工厂模式(abstract factory pattern)
2013-07-13 23:09 882Human.java代码如下: package com. ... -
设计模式----工厂方法模式(factory method pattern)
2013-07-10 22:19 1037给定一个工厂类,用这个工厂类造出一堆对象来,这些对象对应的类实 ... -
设计模式----多例模式(Multition)
2013-07-02 22:47 1001Emperor.java 代码如下: ... -
设计模式----单例模式(singleton)
2013-06-30 22:17 729单例就是唯一的意思。 第一种单例实现方式(在多线程环境中存在 ... -
设计模式----代理模式(proxy)
2013-06-30 22:02 920代理模式主要使用了java ... -
设计模式----策略模式(strategy)
2013-06-29 22:17 1031本文参考别人设计模式的一个例子。 关于诸葛亮的三个锦囊妙计的 ... -
装饰着模式(decorator)
2012-09-09 21:51 976一下代码就是运用了装饰者模式: package com.ba ... -
观察者模式(observer)
2012-09-09 19:36 905设计模式中观察者模式的实现有很多方式,这里列出两种实现方式 1 ...
相关推荐
设计模式(18)-Command Pattern 设计模式(17)-Chain of Responsibility Pattern 设计模式(16)-Bridge Pattern 设计模式(15)-Facade Pattern 设计模式(14)-Flyweight Pattern C#设计模式(13)-Proxy ...
命令模式-Command Pattern 请求发送者与接收者解耦——命令模式(一) 请求发送者与接收者解耦——命令模式(二) 请求发送者与接收者解耦——命令模式(三) 请求发送者与接收者解耦——命令模式(四) 请求发送者...
将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可取消的操作。
Head First 设计模式 (六) 命令模式(Command pattern) C++实现
命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。
36种最新设计模式整理 Design Pattern: Simple Factory 模式 Design Pattern: Abstract Factory 模式 Design Pattern: Builder 模式 Design Pattern: Factory Method 模式 Design Pattern: Prototype 模式 ...
设计模式-适配器-工厂-命令-备忘录Java中的Adapter&Factory&Command&Memento设计模式GoodHealth Fitness Corporation 是一家大型健身俱乐部。 它提供最先进的设备供其成员使用。 公司维护一个会员系统,用于记录会员...
设计模式(18)-Command Pattern 168 一、 命令(Command)模式 168 二、 命令模式的结构 168 三、 命令模式的示意性源代码 169 四、 玉帝传美猴王上天 172 五、 命令模式的实现 172 六、 命令模式的实际应用案例 ...
命令模式(Command Pattern) 解释器模式(Interpreter Pattern) 迭代器模式(Iterator Pattern) 中介者模式(Mediator Pattern) 备忘录模式(Memento Pattern) 观察者模式(Observer Pattern) 状态模式...
23种设计模式(Design Pattern)的C++实现范例,包括下面列出的各种模式,代码包含较详细注释。另外附上“设计模式迷你手册.chm” 供参考。 注:项目在 VS2008 下使用。 创建型: 抽象工厂模式(Abstract Factory) ...
创意设计模式 -- Abstract Factory - Done -- Builder - Done -- Factory Method -- Object Pool -- Prototype - Done -- Singleton - Done 结构设计模式 -- Adapter -- Bridge -- Composite -- Decorator - Done ...
12、命令模式COMMAND PATTERN 13、装饰模式DECORATOR PATTERN 14、迭代器模式ITERATOR PATTERN 15、组合模式COMPOSITE PATTERN 16、观察者模式OBSERVER PATTERN 17、责任链模式 18、访问者模式VISITOR PATTERN ...
命令模式(Command Pattern) 解释器模式(Interpreter Pattern) 迭代器模式(Iterator Pattern) 中介者模式(Mediator Pattern) 备忘录模式(Memento Pattern) 观察者模式(Observer Pattern) 状态模式(State...
工厂方法模式(Factory Method Pattern) 观察者模式(Observer Pattern) 建造者模式(Builder Pattern) 解释器模式(Interpreter Pattern) 命令模式(Command Pattern) 模板方法模式(Template Method Pattern) 桥接模式...
设计模式(18)-Command Pattern 一、 命令(Command)模式 二、 命令模式的结构 三、 命令模式的示意性源代码 四、 玉帝传美猴王上天 五、 命令模式的实现 六、 命令模式的实际应用案例 七、 在什么情况下...
命令模式(Command Pattern) 解释器模式(Interpreter Pattern) 迭代器模式(Iterator Pattern) 中介者模式(Mediator Pattern) 备忘录模式(Memento Pattern) 观察者模式(Observer Pattern...
命令模式(Command Pattern) 15. 迭代器模式(Iterator Pattern) 16. 观察者模式(Observer Pattern) 17. 解释器模式(Interpreter Pattern) 18. 中介者模式(Mediator Pattern) 19. 职责链模式(Chain of ...
“[设计模式]在实用环境下特别有用,因为它分类描述了一组设计良好,表达清楚的面向对象软件设计模式。整个设计模式领域还很新,本书的四位作者也许已占据了这个领域造诣最深的专家中的半数,因而他们定义模式的方法...
命令模式(Command Pattern) 15. 迭代器模式(Iterator Pattern) 行为型: 16. 观察者模式(Observer Pattern) 17. 解释器模式(Interpreter Pattern) 18. 中介者模式(Mediator Pattern) ...