java设计模式,命令模式
来源:互联网 发布:php服务器搭建 编辑:程序博客网 时间:2024/06/10 22:35
package com.dasenlin.commond;/** * 命令模式很好理解,举个例子,司令员下令让士兵去干件事情 * ,从整个事情的角度来考虑,司令员的作用是,发出口令,口令经过传递,传到了士兵耳朵里,士兵去执行。 * 这个过程好在,三者相互解耦,任何一方都不用去依赖其他人,只需要做好自己的事儿就行, * 司令员要的是结果,不会去关注到底士兵是怎么实现的。我们看看关系图: * Invoker是调用者(司令员),Receiver是被调用者(士兵), * MyCommand是命令,实现了Command接口,持有接收对象,看实现代码: * @author Administrator * */public interface Command { public void exe();}class MyCommand implements Command{ private Receiver receiver; public MyCommand(Receiver receiver) { super(); this.receiver = receiver; } @Override public void exe() { receiver.action(); }}class Receiver{ public void action(){ System.out.println("command received"); }}class Invoker{ private Command command; public Invoker(Command command) { super(); this.command = command; } public void action(){ command.exe(); }}package com.dasenlin.commond;/** * 这个很哈理解,命令模式的目的就是达到命令的发出者和执行者之间解耦,实现请求和执行分开, * 熟悉Struts的同学应该知道,Struts其实就是一种将请求和呈现分离的技术,其中必然涉及命令模式的思想! * 其实每个设计模式都是很重要的一种思想,看上去很熟,其实是因为我们在学到的东西中都有涉及,尽管有时我们并不知道, * 其实在Java本身的设计之中处处都有体现,像AWT、JDBC、集合类、IO管道或者是Web框架,里面设计模式无处不在。 * @author Administrator * */public class Test { public static void main(String[] args) { Receiver rec=new Receiver(); Command cmd=new MyCommand(rec); Invoker invoker=new Invoker(cmd); invoker.action(); }}
0 0
- java设计模式-命令模式
- java设计模式---命令模式
- java设计模式---命令模式
- 【java 设计模式】命令模式
- Java设计模式:命令模式
- java设计模式-----命令模式
- Java设计模式-命令模式
- java设计模式---命令模式
- Java设计模式--命令模式
- Java设计模式--命令模式
- JAVA设计模式-命令模式
- java设计模式,命令模式
- JAVA设计模式--命令模式
- Java设计模式-命令模式
- java设计模式-命令模式
- Java设计模式-命令模式
- JAVA设计模式-命令模式
- JAVA 设计模式 命令模式
- 配置composer代理
- solr管理界面详解
- 数据库操作(增删改查+升级表结构)
- 数据库的主键数字设置
- Lua 元表(metatable)
- java设计模式,命令模式
- HTTP请求和数据安全
- python小练习5:如何判断一个数能否被3整除
- 浅谈RAID写惩罚(Write Penalty)与IOPS计算
- mysql 存储过程的使用
- maven笔记
- Tomcat中SpringMVC的静态资源配置
- InputArray OutputArray 与vector 什么关系 ?
- 硬件加速导致的问题集合(欢迎补充)