首页
登录
从业资格
某灯具厂商欲生产一个灯具遥控器,该遥控器具有7个可编程的插槽,每个插槽都有开关灯
某灯具厂商欲生产一个灯具遥控器,该遥控器具有7个可编程的插槽,每个插槽都有开关灯
练习题库
2022-08-02
14
问题
某灯具厂商欲生产一个灯具遥控器,该遥控器具有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共有两位生产者,生产者甲不断地将其工序上加工的半成品放入半成品
某企业有生产部和销售部,生产部负责生产产品并送入仓库,销售部从仓库取出产品销售。
某企业有生产部和销售部,生产部负责生产产品并送入仓库,销售部从仓库取出产品销售。
随机试题
HowtoChooseaCollege?I.Student-facultyratio—Thelowertheratios,themo
[originaltext]Fullfacetransplantarenolongersciencefictionfantasy,a
在保险市场上,常见的保险人的组织形式有()。A.有限责任保险公司 B.股份
机械循环热水采暖系统与自然循环热水采暖系统的区别有()。A.热源 B.热媒
社区康复的目标中不包括A.对慢性病的管理 B.预防残疾 C.防止传染病发生
女性,31岁。月经周期不规则,周期、经期延长,量偏多,婚后4年不孕,双合诊检查:
舌体胖大有齿痕常见于A、心血不足 B、肝血亏虚 C、肺阴不足 D、肾阴不足
符号是人们共同约定来指称一定对象的标志物,它可以包括以任何形式通过感觉来显示意义
(2021年真题)在我国货币供应量指标体系中,统计口径仅包括现金的指标是()
小儿肺炎合并心力衰竭的诊断,哪项不正确? A.突然烦躁不安 B.心率>18
最新回复
(
0
)