java设计模式-命令模式

标签: java 设计模式
8人阅读 评论(0) 收藏 举报
分类:
package com.hcmony.command;

/**
 * <h3>Shenjue.java基本描述</h3>
 * <p></p>
 *
 * @author hcmony
 * @since V1.0.0, 2018/04/09 17:18
 */
public interface CommandInteface {
	public void exe();
}

package com.hcmony.command;

/**
 * <h3>Shenjue.java基本描述</h3>
 * <p></p>
 *
 * @author hcmony
 * @since V1.0.0, 2018/04/09 17:20
 */
public class Invoker {
	private CommandInteface inteface;
	public Invoker(CommandInteface inteface){
		this.inteface=inteface;
	}
	public void action(){
		inteface.exe();
	}

	public static void main(String[] args) {
		Command command = new Command();
		CommandInteface inteface = new MyCommand(command);
		Invoker invoker = new Invoker(inteface);
		invoker.action();
	}
}

package com.hcmony.command;

/**
 * <h3>Shenjue.java基本描述</h3>
 * <p></p>
 *
 * @author hcmony
 * @since V1.0.0, 2018/04/03 20:26
 */
public class Command {
	public void action(){
		System.out.println("Command    action ");
	}
}

package com.hcmony.command;

/**
 * <h3>命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。
 * 		请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。
 * </h3>
 * <p>	优点: 1、降低了系统耦合度。 2、新的命令可以很容易添加到系统中去。
 		缺点:使用命令模式可能会导致某些系统有过多的具体命令类。
 		使用场景:认为是命令的地方都可以使用命令模式,比如: 1、GUI 中每一个按钮都是一条命令。 2、模拟 CMD。
 		注意事项:系统需要支持命令的撤销(Undo)操作和恢复(Redo)操作,也可以考虑使用命令模式,见命令模式的扩展。
 </p>
 *
 * @author hcmony
 * @since V1.0.0, 2018/04/09 17:18
 */
public class MyCommand implements CommandInteface {
	private Command command;

	public MyCommand(Command command){
		this.command = command;
	}
	@Override
	public void exe() {
		command.action();
	}
}

查看评论

用32行代码表示16个设计模式

为了演示以下16个模式,用了下面32行代码。iterator,adapter,interpreter,proxy,state,visitor,command,bridge,chain of respo...
  • xxcc
  • xxcc
  • 2002-06-22 17:38:00
  • 1546

Javac -cp 和 Java -cp 命令解释

首先介绍一下Javac的带路径编译,带包执行:     编译的时候,只要在javac命令后面指明了.java文件的位置即可,但是在执行.class文件的时候,必须要进到.class包所在的路径,然后把...
  • github_34160016
  • github_34160016
  • 2016-03-25 13:13:53
  • 21772

JAVA和JAVAC 命令行;java 带有包名编译并运行,附带外部依赖jar包运行

JAVA和JAVAC 命令行;java 带有包名编译并运行,附带外部依赖jar包运行
  • just3do
  • just3do
  • 2017-04-03 10:55:16
  • 8596

java -cp 用法介绍

平时都用eclipse执行java程序惯了,今天想在dos下开两个界面看一下程序的消息交互,居然都不会用了,进入class文件所在目录, 执行java  SocketServer1 老是报class...
  • shixiaoguo90
  • shixiaoguo90
  • 2016-01-29 15:51:04
  • 21035

java -cp

java -cp classpath Specify a list of directories, JAR archives, and ZIP archives to  search  for  c...
  • zhuying_linux
  • zhuying_linux
  • 2012-07-04 10:29:42
  • 37356

Java 命令行运行参数大全

javac   用法:javac 其中,可能的选项包括:   -g                                                       生成...
  • tanggao1314
  • tanggao1314
  • 2016-08-09 11:35:52
  • 4509

Java -cp 命令行引用多个jar包的简单写法(Windows、Linux)

1、Windows下用法 在Windows上,可以使用 java your-jar-lib-fold/* your-main-class your-jar-lib-fold为存放一堆jar文件的路径。...
  • hongweigg
  • hongweigg
  • 2016-12-05 14:13:34
  • 8707

JAVA cp 命令

java -cp .;c:\dir1\lib.jar Test      -cp 和 -classpath 一样,是指定类运行所依赖其他类的路径,通常是类库,jar包之类,需要全路径到jar包,w...
  • zpf336
  • zpf336
  • 2014-08-18 21:33:55
  • 1394

java -cp 命令使用

-cp 参数后面是类路径,是指定给解释器到哪里找到你的.class文件, 写法: java -cp .;myClass.jar packname.maincla...
  • Ghost_T
  • Ghost_T
  • 2010-08-24 14:39:00
  • 1057

windows下用到的<em>cp命令</em>

<em>cp</em>,相信用linux的用户对这个<em>命令</em>很熟悉,但windows下却没有这个<em>命令</em>,把它拷贝到...windows copy<em>命令</em>详解 <em>Java</em>c -<em>cp</em> 和 <em>Java</em> -<em>cp</em> <em>命令</em>解释 windows下用到的...
  • 2018年04月21日 00:00
    个人资料
    专栏达人 持之以恒
    等级:
    访问量: 6万+
    积分: 1301
    排名: 3万+
    博客专栏
    最新评论