首页
登录
从业资格
某灯具厂商欲生产一个灯具遥控器,该遥控器具有7个可编程的插槽,每个插槽都有开关灯
某灯具厂商欲生产一个灯具遥控器,该遥控器具有7个可编程的插槽,每个插槽都有开关灯
练习题库
2022-08-02
15
问题
某灯具厂商欲生产一个灯具遥控器,该遥控器具有7个可编程的插槽,每个插槽都有开关灯具的开关,现采用Command(命令)模式实现该遥控器的软件部分。Command模式的类图如图6-1所示。
【Java代码】class Light{public Light( ){}public Light(String name){/*代码省略*/}public void on( ){/*代码省略*/}//开灯public void off( ){/*代码省略*/}//关灯//其余代码省略}(1){public void execute( );}class LightOnCommand implements Command{//开灯命令Light light;public LightOnCommand(Light light){this.light=light;}public void execute( ){(2);}}class LightOffCommand implements Command{//关灯命令Light light;public LightOffCommand(Light light){this.light=light;}public void execute( ){(3);}}class RemoteControl{//遥控器Command[]onCommands=new Command[7];Command[]offCommands=new Command[7];public RemoteControl( ){/*代码省略*/}public void setCommand(int slot,Command onCommand,Command offCommand){(4)=onCommand;(5)=offCommand;}public void onButtonWasPushed(int slot){(6);}public void offlButtonWasPushed(int slot){(7);}}class RemoteLoader{public static void main(String[]args){RemoteControl remoteControl=new RemoteControl( );Light livingRoomLight=new Light("Living Room");Light kitchenLight=new Light("kitchen");LightOnCommand livingRoomLightOn=new LightOnCommand(livingRoomLight);LightOffCommand livingRoomLightOff=new LightOffCommand(livingRoomLight);LightOnCommand kitchenLightOn=new LightOnCommand(kitchenLight);LightOffCommand kitchenLightOff=new LightOffCommand(kitchenLight);remoteControl.setCommand(0,livingRoomLightOn,livingRoomLightOff);remoteControl.setCommand(1,kitchenLightOn,kitchenLightOff);remoteControl.onButtonWasPushed(0);remoteControl.offButtonWasPushed(0);remoteControl.onButtonWasPushed(1);remoteControl.offButtonWasPushed(1);}}
选项
答案
解析
(1)interface Command
(2)light.on()
(3)light.off()
(4)onCommands[slot]
(5)offCommands[slot]
(6)onCommands[slot].execute()
(7)offCommands[slot].execute()
本题考察设计模式的实现,难度较小。根据类图和已有代码可写出空缺的代码.
(1)是Command接口的实现,应该填写interface Command;
(2)和(3)定义了开灯、关灯action,因此,分别填写(2)light->on()(3)light->off();
(4)(5)分别设置“开灯”命令对象、“关灯”命令对象,因此分别填写(4)onCommands[slot](5)offCommands[slot];
(6)(7)分别完成对开灯、关灯命令对象的execute方法的调用,因此分别填写(6)onCommands[slot].execute()
(7)offCommands[slot].execute()。
转载请注明原文地址:https://tihaiku.com/congyezige/2409647.html
本试题收录于:
中级 软件设计师题库软件水平考试初中高级分类
中级 软件设计师
软件水平考试初中高级
相关试题推荐
()是针对重复性的技术事项而制定的标准,是从事生产、建设及商品流通时需要共同遵
( )和(请作答此空)是商业秘密的基本内容A.生产秘密 B.营销秘密 C.技
某系统中有一个缓冲区,进程P1不断地生产产品送入缓冲区,进程P2不断地从缓冲区中
某企业的生产流水线上有2名工人P1和P2,1名检验员P3.P1将初步加工的半成
某企业的生产流水线上有2名工人P1和P2,1名检验员P3。P1将初步加工的半成品
某企业生产流水线M共有两位生产者,生产者甲不断地将其工序上加工的半成品放入半成品
某企业生产流水线M共有两位生产者,生产者甲不断地将其工序上加工的半成品放入半成品
某企业生产流水线M共有两位生产者,生产者甲不断地将其工序上加工的半成品放入半成品
某企业有生产部和销售部,生产部负责生产产品并送入仓库,销售部从仓库取出产品销售。
某企业有生产部和销售部,生产部负责生产产品并送入仓库,销售部从仓库取出产品销售。
随机试题
Familyplanning,afterdecadesofenforcement,istobebasicallychanged,w
Farewell,Libraries?Amazon.com’srecentannounc
[originaltext]EuropeanUnionforeignministersareputtingpressureonTurkey
“一带一路”为全球均衡可持续发展增添了新动力,提供了新平台。下图为“一带一路”主
患儿,1岁。发热、咳嗽、流涕3天入院。入院后体温持续不退,达40℃,呕吐、谵妄,
隔离栅的作用有()。A、隔离公路用地 B、防止非法占用公路用地 C、隔
患者心悸而痛,胸闷气短,动则更甚,自汗,神倦怯寒,四肢欠温,舌质淡胖,边有齿痕,
物业管理信息系统的典型特征不包括()。A:动态性B:集成性C:整体性D:交
正常人的一个咀嚼周期中,发生咬合接触的平均时间为A.0.2秒 B.0.4秒
某圆形办公室,半径为5m,吊顶高3.3m,釆用格栅式荧光灯嵌入顶棚布置成3条光带
最新回复
(
0
)