public class Client {
public static void main(String[] args) {
Command exitCommand , helpCommand;
FunctionButton functionButton = new FunctionButton();
exitCommand = new ExitCommand();
functionButton.setCommand(exitCommand);
functionButton.click();
helpCommand = new HelpCommand();
functionButton.setCommand(helpCommand);
functionButton.click();
}
}
public class FunctionButton {
private Command command;
public void setCommand(Command command){
this.command = command;
}
public void click(){
command.execute();
}
}
public interface Command {
void execute();
}
public class ExitCommand implements Command{
private SystemExitClass systemExit;
@Override
public void execute() {
systemExit=new SystemExitClass();
systemExit.exit();
}
}
public class SystemExitClass {
public void exit(){
System.out.println("exit....");
}
}
public class HelpCommand implements Command{
private DisplayHelpClass displayHelp;
@Override
public void execute() {
displayHelp = new DisplayHelpClass();
displayHelp.display();
}
}
public class DisplayHelpClass {
public void display(){
System.out.println("help....");
}
}