命令模式(Command)例子2增加宏命令

xiaoxiao2022-06-12  49

命令模式(Command)例子2增加宏命令

 

为julia的录音机增加一个记忆功能,可以把命令记录下来,在任何需要时重新把这些记录下来的命令一次性执行,这就所谓的宏命令。这时,julia的录音机就多了一个新按钮用于执行宏命令。

 

增加宏命令后的代码如下:

/** 在Julia中加入的宏命令代码*/ public static void test2() { Command play = new PlayCommand(myAudio); Command stop = new StopCommand(myAudio); Command rewind = new RewindCommand(myAudio); MacroCommand macro = new MacroAudioCommand(); macro.add(play); macro.add(stop); macro.add(rewind); macro.add(stop); macro.add(play); macro.add(stop); macro.execute(); }

 

public interface MacroCommand extends Command { void execute(); void remove(Command toRemove); void add(Command toAdd); }

  

 

import java.util.Vector; public class MacroAudioCommand implements MacroCommand { private Vector commandList = new Vector(); public void add(Command toAdd) { commandList.addElement(toAdd); } public void remove(int index) { commandList.remove(index); } public void remove(Command toRemove) { commandList.removeElement(toRemove); } public void execute() { Command nextCommand; for (int i=0; i < commandList.size(); i++) { nextCommand = (Command) commandList.elementAt(i); nextCommand.execute(); } } }

 

转载请注明原文地址: https://www.6miu.com/read-4933322.html

最新回复(0)