命令模式是一种常用实用的设计模式,它主要是通过三者的结合(命令,增加命令,事件激发)在一起,充分显示了灵活性,好了,废话少说。看下面一个例子
首先是建立命令接口CommandInterface.java
package command;
/**
* 命令接口
* @author Administrator
*
*/
public interface CommandInterface {
public void excute();
}
实现命令的接口类
package command;
/**
* 命令执行类
* @author Administrator
*
*/
public class inCommand implements CommandInterface{
@Override
public void excute() {
// TODO Auto-generated method stub
System.out.println("in command");
}
}
增加事件的接口
package command;
/**
* 增加命令的接口
* @author Administrator
*
*/
public interface AddCommandInterface {
public void setCommand(CommandInterface comd);
public CommandInterface getCommand();
}
//上面这可以增加些自己需要的功能
增加事件的实现类
package command;
public class InAddCommand implements AddCommandInterface{
private CommandInterface comd=null;
@Override
public void setCommand(CommandInterface comd) {
// TODO Auto-generated method stub
this.comd=comd;
}
@Override
public CommandInterface getCommand() {
// TODO Auto-generated method stub
return comd;
}
}
事件激发接口
package command;
/**
* 建立事件激发接口
* @author Administrator
*
*/
public interface ActionInterface {
public void actionPerformed(AddCommandInterface comInter);
}
//要不要这个类看自己的需求来建立的
实现激发事件的类
package command;
public class ActionCommand implements ActionInterface {
@Override
public void actionPerformed(AddCommandInterface comInter) {
// TODO Auto-generated method stub
comInter.getCommand().excute();
}
}
管理类
package command;
/**
* 对命令接口的实现
* @author Administrator
*
*/
public class Actualize {
private AddCommandInterface addCommand=null;
public Actualize() {
// TODO Auto-generated constructor stub
}
/**
* 增加命令
*/
public void addCommandInter(AddCommandInterface addCommand){
this.addCommand=addCommand;
}
/**
* 执行命令
*/
public void addAction(ActionInterface action){
action.actionPerformed(this.addCommand);
}
}
实现类,也可以说是统一管理类吧,很方便的
package command;
public class ExcuteCommand {
public static void exec(CommandInterface com){
Actualize actu=new Actualize();
InAddCommand inAdd=new InAddCommand();
inAdd.setCommand(com);
actu.addCommandInter(inAdd);
actu.addAction(new ActionCommand());
}
}
好了,到我们写代码去测度的了
package command;
public class TestCommand {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
inCommand in=new inCommand();
ExcuteCommand.exec(in);
// outCommand out=new outCommand();
// ExcuteCommand.exec(out);
// printCommand print=new printCommand();
// ExcuteCommand.exec(print);
}
}
分享到:
相关推荐
在Java中,命令模式的应用非常广泛,尤其在需要解耦调用者和接收者时。 命令模式的核心组成部分包括:**命令接口**、**具体命令类**、**接收者**和**调用者**。 1. **命令接口**:定义了一个接收者需执行的操作,...
下面是一个简单的Java命令模式示例: ```java // 接收者接口 interface Receiver { void action(); } // 具体接收者类 class ConcreteReceiver implements Receiver { @Override public void action() { ...
在Java中,命令模式的应用非常广泛,尤其在需要解耦调用者和执行者时。 首先,我们来看一下这个示例代码的核心组成部分: 1. **Command接口**(Command.java):这是所有命令的抽象基类,定义了一个`execute()`...
Java中的命令模式是一种设计模式,它将请求封装为对象,使得请求发送者和接收者之间解耦。在命令模式中,主要有三个角色:命令接口(Order)、具体命令(如BuyStock和SellStock)以及调用者(Broker)。下面将详细...
设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段...
Java 命令模式设计模式详解 命令模式(Command Pattern)是一种行为设计模式,它允许将请求封装为一个对象,从而使不同的请求可以使用不同的参数进行参数化,队列或日志请求,以及支持可撤销的操作。在 Java 中,...
java命令模式详解 在软件设计中,命令模式是一种非常重要的行为类模式,它将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。下面我们...
例如,以下是一个简单的Java命令模式示例: ```java // 命令接口 public interface Command { void execute(); } // 具体命令类 public class ConcreteCommand implements Command { private Receiver receiver;...
在“记事本 使用了策略模式和命令模式”这个主题中,我们将深入探讨这两种设计模式以及它们如何应用于记事本软件的实现。 首先,让我们了解策略模式。策略模式是一种行为设计模式,它允许在运行时选择算法或策略。...
Java命令模式是一种设计模式,属于行为模式类别,它将一个请求封装为一个对象,从而使得你可以使用不同的请求对客户进行参数化,对请求排队或记录请求日志,以及支持可撤销的操作。通过这种方式,命令模式将请求的...
该PPT用于公司内部分享设计模式6---命令模式之用,言简意赅,形象生动.故此分享,希望大家一起学习
命令模式是Java设计模式中的一种常见模式,主要用于将命令的发出者和执行者之间解耦,实现请求和执行分开。 命令模式的定义是将一个请求封装成一个对象,从而使您可以用不同的请求对客户进行参数化。它的主要目的是...
15.3.3 命令模式的使用场景 15.4 命令模式的扩展 15.4.1 未讲完的故事 15.4.2 反悔问题 15.5 最佳实践 第16章 责任链模式 16.1 古代妇女的枷锁—“三从四德” 16.2 责任链模式的定义 16.3 责任链模式的应用 16.3.1 ...
在这个“设计模式作业——用命令模式java语言编写的烧烤店”项目中,我们将探讨如何运用命令模式来构建一个模拟烧烤店的系统。命令模式是一种行为设计模式,它将请求封装为一个对象,使得我们可以参数化不同的请求、...
在Java中实现命令模式,我们可以创建一个接口或者抽象类作为命令接口,定义执行操作的方法。然后,为每个具体的操作创建一个实现了命令接口的具体命令类。 在"命令模式(多命令)"的场景中,我们可能会处理多个命令,...
命令模式是一种设计模式,属于对象行为型模式,其主要目的是将请求发送者和接收者解耦,使得两者之间没有直接的引用关系。...在Java开发中,命令模式常用于事件驱动系统,如GUI中的按钮点击事件处理等。
- 命令模式:将命令封装为对象,以便使用不同的请求、队列请求或支持可撤销的操作。 - 解释器模式:提供一种方式来表示语言的语法,并定义它的解释规则。 - 迭代器模式:提供一种方法顺序访问聚合对象的元素,而...
在 Java 中,命令模式是一种行为设计模式,它将请求封装为对象,允许对客户端进行参数化,包括队列、请求和操作。该模式还支持可撤销的操作,增强了管理和执行命令的灵活性。 二、命令设计模式的别名 Action(动作)...
3. 行为型模式:策略模式、模板方法模式、观察者模式、命令模式、迭代器模式、责任链模式、备忘录模式、状态模式、访问者模式、解释器模式。这些模式关注于对象之间的交互和行为,使代码更具灵活性和可复用性。 在...