深圳网站运营外包公司,朋友圈广告怎么投放,爱站网 关键词挖掘工具站长工具,好牌子网在Java中#xff0c;命令模式是一种行为设计模式#xff0c;它允许将请求封装成一个对象#xff0c;从而使得可以参数化其他对象对请求进行调用、队列化请求、或者记录请求日志#xff0c;同时支持可撤销的操作。 下面是一个简单的示例代码#xff0c;展示了如何使用命令模…在Java中命令模式是一种行为设计模式它允许将请求封装成一个对象从而使得可以参数化其他对象对请求进行调用、队列化请求、或者记录请求日志同时支持可撤销的操作。 下面是一个简单的示例代码展示了如何使用命令模式 // 定义命令接口
interface Command {void execute();
}// 具体命令类实现了命令接口
class LightOnCommand implements Command {private Light light;public LightOnCommand(Light light) {this.light light;}public void execute() {light.turnOn();}
}// 接收者类真正执行命令的对象
class Light {public void turnOn() {System.out.println(灯已打开);}public void turnOff() {System.out.println(灯已关闭);}
}// 命令的调用者负责执行命令
class RemoteControl {private Command command;public void setCommand(Command command) {this.command command;}public void pressButton() {command.execute();}
}public class Main {public static void main(String[] args) {// 创建接收者对象Light light new Light();// 创建具体命令对象将接收者对象传入Command lightOnCommand new LightOnCommand(light);// 创建命令的调用者对象RemoteControl remoteControl new RemoteControl();// 设置命令remoteControl.setCommand(lightOnCommand);// 调用命令remoteControl.pressButton();}
} 在这个示例中命令模式将“打开灯”的操作封装成了一个命令对象LightOnCommand并且通过RemoteControl来执行这个命令。这样做的好处是如果有其他命令比如“关闭灯”的操作只需要创建相应的命令对象并设置给RemoteControl即可而不需要直接修改RemoteControl的代码。