首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明、图和Java代码,填补Java代码中的空缺(1)~(5),将解答写在答题纸的对应栏内。 【说明】 已知某公司主要有两大类耗电资产(Asset):计算机(ComputerAsset)和建筑物(BuildingAsset)。为了节
阅读以下说明、图和Java代码,填补Java代码中的空缺(1)~(5),将解答写在答题纸的对应栏内。 【说明】 已知某公司主要有两大类耗电资产(Asset):计算机(ComputerAsset)和建筑物(BuildingAsset)。为了节
admin
2013-07-03
44
问题
阅读以下说明、图和Java代码,填补Java代码中的空缺(1)~(5),将解答写在答题纸的对应栏内。
【说明】
已知某公司主要有两大类耗电资产(Asset):计算机(ComputerAsset)和建筑物(BuildingAsset)。为了节约能源,通过控制各种电源,将可关闭的房灯、计算机显示器等在夜间关闭。
为了实现上述需求,设计了如下图所示的类图,并用下面的Java代码加以实现。
[Java代码】
abstract class Asset{ /*通用资产,基类*/
interface PowerSwitchable{ /*可在夜间关闭的电源的物体实现该接口*/
public void void powerDown();
public void powerUP();
}
abstract class BuildingAsset extends Asset{ /*建筑物资产*/
protected int room;
public BuildingAsset(int room){this.room=room;}
}
abstract class BuildingLight extends BuildingAsset{
//灯的通用信息:fluorescent/incandescent等,略
BuildingLight(int room Number){ super(roomNunaber);}
}
class Emergencynight
(1)
{ //应急灯,永不关闭
EmergrncyLight(int roomNumber){
Super(roomNumber);
}
} 。
class RoomLights
(2)
{
RoomLights(int roomNurober){super(roomNumber);}
Public void powerDown(){ //关电源,代码省略}
Public void powerUp(){ //开电源,代码省略)
}
/*ComputerAsset、ComputerCPU和ComputerMonitor代码省略*/
public class BuildingManagement{
Asset things[]=new Asset[24];
int numItems=0;
public void goodnight(){ //值班员定时“关闭”时调用,关闭可关闭的电源
for(int i=0:i<things.length;i++)
if(things
instanceof
(3)
)
((powerSwitchable)things
).powerDown();
}
/*goodMoming()与goodNight()类似,依次调用powetUp(),其实现细节此处省略*/
public void add(Asset thing){ /*为建筑添加资产*/
Things[
(4)
]=thing;
}
public static void main(string[]args){
BuildingManagement*b1=
(5)
BuildingManagement();
b1.add(new RoomLights(101)); //101房间的控制灯
b1.add(new EmergencyLight(101)); //101房间的应急灯
b1.add(new ComputerCPU(10104)); //101房间4号桌上的计算机
b1.add(new ComputerMonitor(10104)); //101房间4号桌上的计算机显示器
b1.goodNight();
delete b1;
}
}
选项
答案
(1)extends BuildingLight (2)extends BuildingLight implements PowerSwitchable (3)PowerSwitchable (4)numltems++ (5)new
解析
本题考查考生使用Java语言进行面向对象程序设计的能力。首先要看懂所给类图中类与类之间的关系,然后阅读程序以实现类图中表示的各个要素。
(1)处考查类EmergencyLight。从类图中可以看出,类EmergencyLight表示应急灯,其继承了类BuildingLight。EmergencyLight是BuildingLight的子类,并且在EmergencyLight的构造方法中,调用了父类BuildingLight的构造方法,采用super(),而且调用父类的构造方法必须是构造方法的第一条语句。在Java语言中,继承父类用extends父类来表示。因此,(1)处应填入extends BuildingLight。
(2)处考查类RoomLights。从类图中可以看出,类RoomLights表示可在夜间关闭的房灯,其继承了类BuildingLight。RoomLights是BuildingLight的子类,而且均是可关闭的,具有开关电源的相同接口,均继承了类PowerS witchable,并且在RoomLights的构造方法中,调用了其父类的构造方法。Java语言中的继承是单根继承,即一个类只能有一个父类,而接口可以实现多个,因此将PowerSwitchable定义为接口,使用interface关键字。类RoomLights和ComputerMonitor均实现PowerSwitchable接口,使用implements关键字。(2)处用于添加继承和实现接口,应填入extends BuildingLight implements PowerSwitchable。
系统中有各类资产,在类BuldingManagement中使用Asset通用资产类型数组,用add函数依次为建筑添加资产。南于add方法中对数组添加元素只有一条语句.需要在下标中完成指明当前添加资产元素的下标,并将下标后移。在goodNight方法中对可关闭的资产进行控制,需要判定其是否可关闭,也就是资产是否为类PowerSwitchable的实例。用instanceof关键字,判断对象是否为实现通用接口PowerSwitchable类型的实例。如果对象的类型是实现PowerSwitchable接口的类型,则转换为PowerSwitehable接口类型,并利用动态绑定机制,正确绑定到具体对象,执行对象的关闭电源行为。
(3)处将接口作为一种引用类型,用instanceof判断对象是否为接口类型,因此应填入Pow-erSwitchable。
(4)处指明当前添加资产元素的下标,并将下标后移,应填入numltems十十。
类BuldingManagement中没有定义构造方法,编译器会自动生成一个默认的构造方法,采用new关键字进行对象创建。在使用完之后,通过delete进行释放。
(5)处补充通过使用编译器生成的默认的构造方法进行对象创建,应填入new。
转载请注明原文地址:https://jikaoti.com/ti/9bW7FFFM
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Excel中,若A1单元格中的内容为“全国计算机技术与软件专业技术资格(水平)考试”,在A2单元格中输入函数=LEFT(A1,2),则A2单元格显示的内容是______。
计算机受病毒感染主要是______。
在Excel2007中,若在单元格A1中输入函数“=MID(“RUANKAO”,1,4)”,按回车键后,则A1单元格中的值为()。
计算机每次启动时自动运行的计算机病毒称为______病毒。
在PowerPoint2007中,为精确控制幻灯片的放映时间,可使用______功能。
计算机病毒是一段程序,一般隐藏在______中。
在网页中创建一个如下图所示的表单控件的HTML代码是(26)。
综合布线系统由6个子系统组成,将图1-1中(1)~(6)处空缺子系统的名称填写在答题纸对应的解答栏内。制作交叉双绞线(一端按EIA/TIA568A线序,另一端按EIA/TIA568B线序)时,其中一端的线序如图1-2(a)所示,另一端线序如图1—2
随机试题
下列情况并存心绞痛,哪一种不宜用硝酸什油
患者,男性,48岁,主因突发上腹部剧痛,逐渐波及全腹2h,恶心呕吐胃内容物1次就诊。初步诊断为十二指肠球部溃疡并急性穿孔。关于该患者的护理,错误的是
A.硝酸甘油B.可乐定C.硝苯地平D.卡托普利E.维拉帕米治疗伴有消化性溃疡的高血压药物首选的药物是()
地面大气的水平移动,由风向和风速表示的是()。
债权人为保全债权而行撤销权需具备的要件包括( )。
下列关于动产和不动产的说法正确的是()。
有50名学生参加联欢会,第一个到会的女生同每个男生握过手,第二个到会的女生只差1个男生没握过手,第三个到会的女生只差2个男生没握过手,如此等等,最后一个到会的女生和7个男生握过手,那么这50名学生中有几名男生( )。
货币供应量增加对股票有何影响?
是否应当废除死刑,在一些国家一直存在争议,下面是相关的一段对话:史密斯:一个健全的社会应当允许甚至提倡对罪大恶极者执行死刑。公开执行死刑通过其震慑作用显然可以减少恶性犯罪,这是社会自我像护的必要机制。苏珊:您忽视了讨论这个议题的一个前提
Whenpeopleplantomeetnowadays,they______.Wecaninferfromthepassagethatthetextssentbytextersare______.
最新回复
(
0
)