[试题]

请阅读以下技术说明、类图及Java代码,根据要求将(1)~(7)空缺处的内容填写完整。

1. [说明]

已知某企业欲开发一家用电器遥控系统,即用户使用一个遥控器即可控制某些家用电器的开与关。遥控器面板如图1-18所示。该遥控器共有4个按钮,编号分别是0至3,按钮0和2能够遥控打开电器1和电器2,按钮1和3则能遥控关闭电器1和电器2。由于遥控系统需要支持形式多样的电器,因此,该系统的设计要求具有较高的扩展性。现假设需要控制客厅电视和卧室电灯,对该遥控系统进行设计所得类图如图1-19所示。

在图1-19中,类RomoteController的方法onPressButton(int button)表示当遥控器按键按下时调用的方法,参数为按键的编号;Command接口中on和off方法分别用于控制电器的开与关;Light中turnLight (int degree)方法用于调整电灯灯光的强弱,参数degree值为0时表示关灯,值为100时表示开灯并且将灯光亮度调整到最大;TV中setChannel(int channel)方法表示设置电视播放的频道,参数channel值为0时表示关闭电视,为1时表示开机并将频道切换为第1频道。

[Java代码]

本试题应用命令模式能够有效让类(5)和类(6)、类(7)之间的耦合性降至最小。

参考答案与解析:

相关试题

阅读以下技术说明及Java程序,将Java程序中(1)~(5)空缺处的语句填写完

[试题]阅读以下技术说明及Java程序,将Java程序中(1)~(5)空缺处的语句填写完整。(说明)用创建Thread类的子类的方法实现多线程,判断一个数是否是素数。如果是,打印“是素数”,如果不是,则打印“不是素数”;如果没有参数输入,显示“请输入一个命令行参数”。(Java程序)import java.io.* ;public class TestThread{ //Java Application主类public static void main(Sting args[ ]){if (args le

  • 查看答案
  • 阅读以下技术说明和C代码,将C程序中(1)~(5)空缺处的内容填写完整。[说明]

    [试题]阅读以下技术说明和C代码,将C程序中(1)~(5)空缺处的内容填写完整。[说明]某种传感器的输出值Ratio依赖于环境温度temp(-40℃≤temp≤50℃)。对一组环境温度值(ITEMS个),已经测量得到了相应的Ratio值(如表4-10表格所示)。表4-10粗略地描述了曲线Ratio(temp)。校正系数K是Ratio的倒数,因此也依赖于环境温度temp。在数据处理中,需要用更多的列表值细致地描述曲线K(temp),如表4-11所示。在表4-11中,各温度值所对应的K值是对表4-10进行线性

  • 查看答案
  • 请阅读以下技术说明和C代码,将程序段中(1)~(5)空缺处的语句填写完整。 (说

    [试题]请阅读以下技术说明和C代码,将程序段中(1)~(5)空缺处的语句填写完整。(说明)著名的四色定理指出任何平面区域图均可用4种颜色着色,使相邻区域着不同的颜色。以下C程序对给定的区域图找出所有可能的不超过4种颜色的着色方案。该程序中用1~4分别表示4种颜色。要着色的N个区域用0~-1编号,区域相邻关系用adj[][]矩阵表示,矩阵的i行j列的元素为1,表示区域i与区域了相邻;矩阵的i行j列的元素为0,表示区域i与区域j不相邻。数组color[]用来存储着色结果,color[i]的值为区域i,所着颜色

  • 查看答案
  • 试题六(共15分)阅读以下说明和Java代码,填补Java代码中的空缺(1)~(

    [试题]试题六(共15分)阅读以下说明和Java代码,填补Java代码中的空缺(1)~(6),将解答写在答题纸的对应栏内。(说明)己知某公司按周给员工发放工资,其工资系统需记录每名员工的员工号、姓名、工资等信息。其中一些员工是正式的,按年薪分周发放(每年按52周计算);另一些员工是计时工,以小时工资为基准,按每周工作小时数核算发放。下面是实现该工资系统的Java代码,其中定义了四个类:工资系统类PayRoll,员工类Employee,正式工类Salaried和计时工类Hourly,Salaried和Hou

  • 查看答案
  • 请根据试题的要求,将汇编程序代码中(1)~(8)空缺处的内容填写完整。

    [主观题]请根据试题的要求,将汇编程序代码中(1)~(8)空缺处的内容填写完整。

  • 查看答案
  • 阅读以下应用说明、图和Java代码,根据要求回答问题1至问题5。 (说明) St

    [试题]阅读以下应用说明、图和Java代码,根据要求回答问题1至问题5。(说明)Stack类是java. ntil包中专门用来实现栈的工具类。以下Java程序是一个不使用库函数而实现字符串反转的程序。例如,输入:123456,则输出:654321:输入:asdfeg,则输出:gefdsa。(Java程序)import java.applet.Applet;import java.awt.*;import java.awt.event.*;import java.util.*;public class Us

  • 查看答案
  • 阅读以下说明和JAVA 2代码,填入(n)处。[说明] 以下JAVA程序设计了类

    [试题]阅读以下说明和JAVA 2代码,填入(n)处。[说明]以下JAVA程序设计了类CSet,使用同一个名称(set)的method来传入数据。仔细阅读[代码6-1)、[代码6-2]和[代码6-3]和相关注释,将程序补充完整。[代码6-1]import java.io.*;class CSet{private int width;private int height;(1)public void set(String color){col=color; //(a)可输入长方形的颜色}public voi

  • 查看答案
  • 阅读以下说明和Java代码,填补空缺。[说明] java.util库中提供了Ve

    [试题]阅读以下说明和Java代码,填补空缺。[说明]java.util库中提供了Vector模板类,可作为动态数组使用,并可容纳任意数据类型。该类的部分方法说明如下所示:方法名 含义add(k) 向vector对象的尾部添加一个元素kremoveElementAt(i) 删除序号为i的元素(vector元素序号从0开始)isEmpty( ) 判断vector对象是否含有元素size( ) 返回vector对象中所包含的元素个数[Java代码]Import ________;public class Ja

  • 查看答案
  • 阅读以下程序说明和C£«£«程序,将程序段中(1)~(5)空缺处的语句填写完整。

    [试题]阅读以下程序说明和C++程序,将程序段中(1)~(5)空缺处的语句填写完整。(说明)以下(C++程序)实现一个简单的小型复数类MiniComplex,该复数类能进行输入、输出、复数的加法、减法、乘法和除法运算,还可以进行复数的相等比较。(C++程序)ifndef H_MiniComplexdefine H_MiniComplexinclude <iostream>using namespace std;class MiniComplex{public: //重载流插入和提取运算符(1) ostre

  • 查看答案
  • 阅读以下说明和Java代码,将填入(n)处的字句在对应栏内。 [说明] 现需要统

    [试题]阅读以下说明和Java代码,将填入 (n) 处的字句在对应栏内。[说明]现需要统计某企业员工的月平均工资,即该企业本月发给员工的工资总和除以员工人数。假设企业本月发给员工的工资总和为sumSalary,该企业的员工总数为employeeNumber,下面的程序代码计算该企业员工本月的平均工资,其中需要处理employNumber为0的情况。[Java代码]import Java.util.Scanner;public class JavaMain{static float average(floa

  • 查看答案
  • 请阅读以下技术说明、类图及Java代码,根据要求将(1)~(7)空缺处的内容填写