首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征。需要模拟的飞机种类及其特征如表17—3所示。 为支持将来模拟更多种类的飞机,采用策
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征。需要模拟的飞机种类及其特征如表17—3所示。 为支持将来模拟更多种类的飞机,采用策
admin
2014-11-13
50
问题
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征。需要模拟的飞机种类及其特征如表17—3所示。
为支持将来模拟更多种类的飞机,采用策略设计模式(Strategy)设计的类图如图17—11所示。
图17—11中,AirCraft为抽象类,描述了抽象的飞机,而类Helicopter、AirPlane、Fighter和Harrier分别描述具体的飞机种类,方法fly()和takeOff()分别表示不同飞机都具有飞行特征和起飞特征类FlyBehavior与TakeOffBehavior为抽象类,分别用于表示抽象的飞行为与起飞行为;类SubSonicFly与SuperSonicFly分别描述亚音速飞行和超音速飞行的行为;类VerticalTakeOff与L0ngDistanceTakeoff分别描述垂直起飞与长距离起飞的行为。
[Java代码]
interfaceFlyBehavior(
publiCVOidfly();
};
classSubSonicFlyimplementsFlyBehaVior(
publicvoidfly()(System.out.printin(“亚音速飞行!”);)
};
ClassSuperSonicFlyimplementsFlyBehaVior(
publicvoidfly()(System.out.println(”超音速飞行!”);)
};
interfaceTakeOffBehavior{
publicvoidtakeOff();
};
ClassVerticalTakeOffimplementsTakeOffBehavior(
publicvoidtakeOff()(System.out.println(“垂直起飞!”);)
};
ClassLongDistanceTakeOffimplementsTakeOffBehavior{
publicvoidtakeOff()
};
abstractclassAirCraft{
protected(1);
protected(2);
publicvoidfly()(3);}
publicvoidtakeOff()(4);};
};
classHelicopter(5)AirCraft{
publiCHelicopter(){
flyBehavior=new(6);
takeOffBehavior=new(7);
}
};
//其他代码省
选项
答案
(1)FlyBehaviorflyBehavior (2)TakeOffBehaviortakeOffBehavior (3)flyBehavior.fly() (4)takeOffBehavior.takeOff() (5)extends (6)SubSonicFly() (7)VerticalTakeOflff()
解析
本题目考查设计模式中的策略设计模式。从本题的叙述中可以看出,存在四种不同的飞机类型,但每种飞机类型的起飞特征和飞行特征并不完全相同,这就使得我们很难采用比较直接的方法来实现重用。例如,定义一个抽象的飞机类,实现飞机的起飞特性,然后四种飞机直接重用该特征。但是,我们可以观察到,尽管飞机的起飞特征和飞机特征有所不同,有一点可以肯定的是,每一种飞机都具备了飞行特征和起飞特征。因此,可以抽象出一个飞机类,其中含有飞行特征与起飞特征,但关于两个特征的实现要单独抽取出来,所以又形成FlyBehavior类SHTakeOffBehavior类,分别表示抽象的飞行和起飞特征,而这两个类的子类则分别实现不同的起飞和飞行特征,最终转化为,在创建一个具体的飞机时,给其赋予不同的起飞特征和飞行特征即可。本题中的空(1)和空(2)应该填写成员变量,根据类图可以得知,此处应该表示的是飞行和起飞特征变量。空(3)和空(4)处需要实现飞行与起飞特征,但AirCraft是抽象的类,所以把实现代理给指针变量。Helicopter类需要制定由父类继承而来的成员变量的初始值,因为Helicopter的特征是垂直起飞和亚音速飞行,因此生成这两个特征的对象,分别赋值给flyBehavior~fHtakeOffBehavior变量。
转载请注明原文地址:https://kaotiyun.com/show/mpDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
阅读以下说明,回答问题1至问题8。[说明]Linux系统开机引导时首先启动内核,由内核检查和初始化硬件设备,载入设备的驱动程序模块,安装root文件系统,然后内核将启动一个名为init的进程。在init运行完成并启动其他必要的后续进程后,
阅读以下说明,回答问题1至问题5。[说明]某小区采用HFC接入Internet的解决方案进行网络设计,网络结构如下图所示。
阅读下面的说明,回答问题1至问题4。【说明】某企业园区网采用了三层架构,按照需求,在网络中需要设置VLAN、快速端口、链路捆绑、Internet接入等功能。该园区网内部分VLAN和IP地址如表12-2所示。表12-2
IIS安装的硬盘分区最好选用NTFS格式,是因为(1)和(2)。A.可以针对某个文件或文件夹给不同的用户分配不同的权限B.可以防止网页中的Applet程序访问硬盘中的文件C.可以使用系统自带的文件加密系统对文件或文件夹进行加密
销售部的网络号是(1),广播地址是(2):技术部的网络号是(3),广播地址是(4);每个子网可用的IP地址有(5)个。在网关计算机/etc/sysconfig/network-scripts/目录中有以下文件,运行某命令可以启动网络,该命令是(9),其
阅读以下关于Linux网关安装和配置过程的说明,回答问题1至问题5。【说明】当局域网中存在大量计算机时,根据业务的不同,可以将网络分成几个相对独立的子网。图12-2是某公司子网划分的示意图,整个网络被均分为销售部和技术部两个子网,子网之间通过一台
DHCP允许服务器向客户端动态分配Ⅲ地址和配置信息。客户端可以从DHCP服务器获得(1)。(1)A.DHCP服务器的地址B.Web服务器的地址C.DNS服务器的地址图3-3是DHCP服务器安装中的添加排除窗口。 参照图
在控制面板的“添加/删除程序”对话框中选择(1),然后进入“应用程序服务器”选项,在(2)组件复选框中选择“文件传输协议(FTP)服务”,就可以在Windows2003中安装FTP服务。(1)A.更改或删除程序B.添加新程序C.添加/删除
在控制面板的“添加/删除程序”对话框中选择(1),然后进入“应用程序服务器”选项,在(2)组件复选框中选择“文件传输协议(FTP)服务”,就可以在Windows2003中安装FTP服务。(1)A.更改或删除程序B.添加新程序C.添加/删除
随机试题
男性,48岁。因咳嗽、右上肺块影行纤维支气管镜检查,经支气管肺活组织检查(TBLB),病理组织学见典型结核结节。查房时上级医师提问此种改变与结核杆菌下述哪种成分有关
下列哪一项是十二经脉的气血流注形式()
下列关于合伙企业财产的表述中,不符合《合伙企业法》规定的是()。
甲乙两台机器完成一项工作,甲机器单独完成要20天,当甲机器做了10天后,乙机器也开始与甲机器共同做,又用了6天全部完成任务。问乙机器单独完成这项工作需要几天?()
-30,2,-2,30,122,346,()。
相对论原理证明:物质的质量与能量的统一是可以计算的,时空的性质不仅取决于物质的运动而且更重要的是取决于物质分布本身。这说明
全面支持软件开发过程的软件T具集合被称为__________。
搜索考生文件夹下GWIN.PAS文件,然后将其删除。
Questions29-40•ReadtheinformationbelowaboutMaureenDowd.•ChoosethecorrectwordtofillineachgapfromA,BorCbe
【B1】【B20】
最新回复
(
0
)