接收者: Recieverjava
命令:Commangit
執行者:Invokergithub
用戶:Clientbash
執行僞代碼:ui
// 有一個接收者
Reciever reciever = new Reciever();
// 接收者能執行各類命令
Command command1 = new ConcreteCommandOne(reciever);
Command command2 = new ConcreteCommandTwo(reciever);
// 有一個調用者,能執行給定的命令
Invoker invoker = new Invoker();
invoker.setCommand(command1).action();
invoker.setCommand(command2).action();
複製代碼
example 源碼spa
// 擁有一個收音機
AudioPlayer audioPlayer = new AudioPlayer();
// 收音機擁有各類功能
PlayCommand playCommand = new PlayCommand(audioPlayer);
RewindCommand rewindCommand = new RewindCommand(audioPlayer);
StopCommand stopCommand = new StopCommand(audioPlayer);
// 有一個鍵盤
Keypad keypad = new Keypad();
// 執行給定的命令
keypad.setCommand(playCommand).action();
keypad.setCommand(rewindCommand).action();
keypad.setCommand(stopCommand).action();
}
複製代碼