zoukankan      html  css  js  c++  java
  • 命令模式

    命令模式:将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤消的操作。

    //命令接受者

    public class Receiver {
    public void Action(){
    System.out.println("烧茄子");
    }
    }

    //命令抽象类  

    public abstract class Command {

    protected Receiver receiver;

    public Command(Receiver receiver){

    this.receiver = receiver; }

    public abstract void Execute(); }

    //命令实现类 

    public class ConcreateCommand extends Command{

    public ConcreateCommand(Receiver receiver) {
    super(receiver);
    }
    public void Execute() {
    receiver.Action();
    }
    }

    //调用者类 

    public class Invoker {

    private Command command;
    public void SetCommand(Command command){
    this.command = command;
    }
    public void ExecuteCommand(){
    command.Execute();
    }
    }

    //测试类

    public class Test {  

    public static void main(String[] args) {

    Receiver receiver = new Receiver(); //创建接受者

    Command command = new ConcreateCommand(receiver); //创建命令

    Invoker invoker = new Invoker(); //创建执行者

    //设置并执行命令

    invoker.SetCommand(command);

    invoker.ExecuteCommand(); } }

  • 相关阅读:
    wenbao与分治
    wenbao与贪心
    wenbao与高精度
    wenbao与FFT
    wenbao与卡特兰数
    wenbao与类
    wenbao与取整函数
    wenbao与字符串转化
    wenbao与scanf
    wenbao与数字与字符串
  • 原文地址:https://www.cnblogs.com/lee0oo0/p/2517191.html
Copyright © 2011-2022 走看看