zoukankan      html  css  js  c++  java
  • 设计模式(命令模式)

    命令行把请求和操作封装起来,坦白的讲,我现在还不是特别理解,也没有再具体的项目中使用过,感觉有点过于复杂。

    本文参考一些材料,给出一个简单的例子。如下:

    • Trade
    public class Trade {
        public void doSell(){
            System.out.println("doSell");
        }
        
        public void doBuy(){
            System.out.println("doBuy");
        }
    }
    • TradeCommand
    public abstract class TradeCommand {
        protected Trade trade;
        
        public TradeCommand(Trade trade){
            this.trade = trade;
        }
        
        public abstract void execute();
    }
    • BuyTradeCommand
    public class BuyTradeCommand extends TradeCommand {
    
        public BuyTradeCommand(Trade trade) {
            super(trade);
        }
    
        @Override
        public void execute() {
            this.trade.doBuy();
        }
    }
    • SellTradeCommand
    public class SellTradeCommand extends TradeCommand {
    
        public SellTradeCommand(Trade trade) {
            super(trade);
        }
    
        @Override
        public void execute() {
            this.trade.doSell();
        }
    }
    • Invoke
    public class Invoke {
        public TradeCommand command;
        
        public void setCommand(TradeCommand command){
            this.command = command;
        }
        
        public void execute(){
            command.execute();
        }
    }
    • APP 测试类
    public class App {
    
        public static void main(String[] args) {
            Trade trade = new Trade();
            Invoke invoke = new Invoke();
            invoke.setCommand(new SellTradeCommand(trade));
            invoke.execute();
            invoke.setCommand(new BuyTradeCommand(trade));
            invoke.execute();
        }
    }
  • 相关阅读:
    Mysql备份工具xtraback全量和增量测试
    Linux进程管理四大工具ps dstat top htop
    Linux Netcat 命令——网络工具中的瑞士军刀
    Linux 下载工具 aria2
    C语言宏基础总结
    使用浏览器做编辑器
    设计模式(1)
    OpenGL 编程(1)
    使用ffmpeg推流
    FFMPEG 解码和编码(编码mjpeg)
  • 原文地址:https://www.cnblogs.com/Fredric-2013/p/4573455.html
Copyright © 2011-2022 走看看