首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征。需要模拟的飞机种类及其特征如表17—3所示。 为支持将来模拟更多种类的飞机,采用策
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征。需要模拟的飞机种类及其特征如表17—3所示。 为支持将来模拟更多种类的飞机,采用策
admin
2014-11-13
30
问题
阅读下列说明和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
软件设计师下午应用技术考试
软考中级
相关试题推荐
启动init进程前,不需要经过______步骤。A.LIIO加载内核B.检测内存C.加载文件系统D.启动网络支持Linux系统运行级别3工作在______状态。A.单用户字符模式B.多用户字符模式
网络设计流程通常由以下五个阶段组成:A.确定网络物理结构B.确定网络逻辑结构C.对现有网络的体系结构进行分析D.安装和维护E.需求分析根据网络开发设计的过程,给出上述五个阶段的先后排序:(1)。Ca
网络设计流程通常由以下五个阶段组成:A.确定网络物理结构B.确定网络逻辑结构C.对现有网络的体系结构进行分析D.安装和维护E.需求分析根据网络开发设计的过程,给出上述五个阶段的先后排序:(1)。将答
阅读以下说明,回答问题1至问题5。【说明】通过SNMP可以获得网络中各种设备的状态信息,还能对网络设备进行控制。在WindowsServer2003中可以采用IPSec来保护SNMP通信,配置管理站的操作步骤为:先创建筛选器,对输入的分组进
销售部的网络号是(1),广播地址是(2):技术部的网络号是(3),广播地址是(4);每个子网可用的IP地址有(5)个。Linux网关计算机有两个网络接口(eth0和eth1),每个接口与对应的子网相连接。该计算机/etc/sysconfig,/
阅读以下关于Linux网关安装和配置过程的说明,回答问题1至问题5。【说明】当局域网中存在大量计算机时,根据业务的不同,可以将网络分成几个相对独立的子网。图12-2是某公司子网划分的示意图,整个网络被均分为销售部和技术部两个子网,子网之间通过一台
在校园网设计过程中,划分了很多VLAN,采用了VTP来简化管理。1.VTP信息只能在(1)端口上传播。2.运行VTP的交换机可以工作在三种模式:(2)、(3)、(4)。3.共享相同VLAN数据库的交换机构成一个(5)。该校园网在
从网络拓扑图中可以看出该校园网采用了分层设计结构,回答以下问题:1.交换机按照所处的层次和完成的功能分为三种类型:核心交换机、汇聚交换机和接入交换机。下表是学校采购的三种交换机,请根据交换机的技术指标确定交换机的类型。在答题纸对应的解答栏内
阅读以下说明,回答问题1至问题3。【说明】如图5-1所示,某单位通过2M的DDN专线接入广域网,该单位内网共分为三个子网。服务器放置在子网192.168.5.0/24中,财务部工作站放置在子网192.168.10.0/24,销售部工作站放置在子网
在控制面板的“添加/删除程序”对话框中选择(1),然后进入“应用程序服务器”选项,在(2)组件复选框中选择“文件传输协议(FTP)服务”,就可以在Windows2003中安装FTP服务。(1)A.更改或删除程序B.添加新程序C.添加/删除
随机试题
下列属于递延资产获取费的是()
在行政诉讼过程中,下列行为中人民法院须征得原告同意才能实施的是()。
甲化工厂和乙造纸厂坐落在一条小河的两岸。化工厂生产中排放三氯化铁残液,造纸厂生产中排放漂液废水,两厂排污浓度均不超过国家规定的排放标准。在河水水位正常情况下,两个工厂排污均不会对河水造成污染。2013年5月该地大旱,河水明显减少,化工厂排放的废水冲入造纸厂
患儿,男,9岁。发热伴流涕3天,咽部充血,肌肉酸痛,胸闷,心率54次/分,实验室检查CK—MB144U/L。心电图:窦性心动过缓,I度房室传导阻滞。该患儿所患疾病的主要病理变化是
牡螈散的功用是四神丸的功用是
女,30岁。劳累后心悸、气短5年,心浊音界在胸骨左缘第3肋间向左扩大。心尖部局限性舒张期隆隆样杂音,第一心音亢进。肝脏不肿大,下肢无水肿。预防本病的关键在于
王二与周三之间订立买卖合同,王二卖给周三钢材5万吨,周三转手将这些钢材卖给了吴某,吴某接到钢材后,发现该财产有严重质量问题,遂向人民法院起诉。经查,王二和周三的买卖合同中有一个仲裁条款:若因该合同发生争议,提交甲市仲裁委员会仲裁。则本案中王二的诉讼地位可能
我国目前的会计监督体系为()。
企业用于生产某种产品的、已确认为无形资产的非专利技术,其摊销金额应计入当期管理费用。()(2014年)
一张原始凭证所列的支出需要由两个以上的单位共同负担时,应当由保存该原始凭证的单位将复制件提供给其他应负担单位。()
最新回复
(
0
)