📄 simpleremotecontroltest.java
字号:
/*
* 实现一个遥控器功能,遥控器能控制一些电器的开关,要求将发出命令的对象和接受执行这些命令的对象解耦
*
* 电器类: --开关等产商自己设计的功能,提供函数接口,不需要关心它的具体实现
* on()
* off()
* ...
*
* 命令对象: --实现如同餐馆的菜单将服务员和厨师联系起来的功能,将电器和遥控器连接起来
* execute() --通用函数接口,调用相应的函数
*
* 遥控器类:
* setCommand() --设置命令,让按键对应相应的功能
* buttonPressed() --执行开关命令
* */
/*
class Light{
public Light(){}
void lightOn(){
System.out.println("开灯");
}
void lightOff(){
System.out.println("关灯");
}
}
//通用命令接口
interface Command{
public void execute();
}
//具体命令对象
class LightOnCommand implements Command{
Light light;
LightOnCommand(Light l){
this.light = l;
}
public void execute(){
light.lightOn();
}
}
class LightOffCommand implements Command{
Light light;
LightOffCommand(Light l){
this.light = l;
}
public void execute(){
light.lightOff();
}
}
//遥控器类
class SimpleRemoteControl{
Command slot;
public SimpleRemoteControl(){}
public void setCommand(Command command){
slot = command;
}
public void buttonPressed(){
slot.execute();
}
}
public class SimpleRemoteControlTest {
public static void main(String[] args){
SimpleRemoteControl srControl = new SimpleRemoteControl();
Light light = new Light();
LightOnCommand lightOn = new LightOnCommand(light);
srControl.setCommand(lightOn);
srControl.buttonPressed();
LightOffCommand lightOff = new LightOffCommand(light);
srControl.setCommand(lightOff);
srControl.buttonPressed();
}
}
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -