首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某游戏公司现欲开发一款面向儿童的模拟游戏,该游戏主要模拟现实世界中种种鸭子的发声特征、飞行特征和外观特征。游戏需要模拟的鸭子种类及其特征如下表所示。 为支持将
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某游戏公司现欲开发一款面向儿童的模拟游戏,该游戏主要模拟现实世界中种种鸭子的发声特征、飞行特征和外观特征。游戏需要模拟的鸭子种类及其特征如下表所示。 为支持将
admin
2018-07-23
18
问题
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某游戏公司现欲开发一款面向儿童的模拟游戏,该游戏主要模拟现实世界中种种鸭子的发声特征、飞行特征和外观特征。游戏需要模拟的鸭子种类及其特征如下表所示。
为支持将来能够模拟更多种类鸭子的特征,采用策略设计模式(Strategy)设计的类图如题图6-1所示。
其中,Duck为抽象类,描述了抽象的鸭子,而类RubberDuck、MallardDuck、CottonDuck和RedHeadDuck分别描述具体的鸭子种类,方法fly()、quack()和display()分别表示不同种类的鸭子都具有飞行特征、发声特征和外观特征;接口FlyBehavior与QuackBehavior分别用于表示抽象的飞行行为与发声行为;类FlyNoWay与FlyWithWings分别描述不能飞行的行为和用翅膀飞行的行为;类Quack、Squeak与QuackNoWay分别描述发出“嘎嘎”声的行为、发出橡皮与空气摩擦声的行为与不发声的行为。请填补以下代码中的空缺。
【Java代码】
____(1)FlyBehaVior {
public void fly();
};
____(2) QuackBehavior{
public void quack();
};
class FlyWithWings implements FlyBehaVior {
public void fly(){System.out.println(’’使用翅膀飞行!’’);}
};
class FlyNoWay implements FlyBehaVior {
public void fly()(System.out.println(’’不能飞行!’’);}
};
class Quack implements QuackBehavior {
public void quack(){System.out.println(’’发出\’嘎嘎’\声!’’);}
};
class Squeak implements QuackBehavior {
public void quack(){System.out.println(’’发出空气与橡皮摩擦声!’’);}
};
class QuackNOWay implements QuackBehavior {
public void quack(){System.out.println(’’不能发声!’’);}
};
Abstract class Duck {
protected FlyBehaVior____(3);
protected QuackBehavior____(4);
public void fly(){____(5);};
public void quack(){____(6);};
public ____(7) void display();
};
class RubberDuck extends Duck {
public RubberDuck( ){
flyBehaVior=new____(8);
quackBehaVior=new ____(9);
}
public void display(){/*此处省略显示橡皮鸭的代码*/}
};
//其他代码省略
选项
答案
(1)Interface (2)Interface (3)flyBehavior (4)quackBehavior (5)flyBehavior.fly (6)quackBehavior.quack() (7)abstract (8)FlyNoWay() (9)Squeak()
解析
本题考查面向对象的程序设计的抽象类和多态,使用的语言是Java。
由题中所给信息,接口FlyBehavior与QuackBehavior分别用于表示抽象的飞行行为与发声行为,可知空(1)处和空(2)处都应填入interface。
由子类RubberDuck类中出现的flyBehavior和quackBehavior在之前并没有被定义过可知,空(3)处和空(4)处需要声明这两个对象分别为FlyBehavior和QuackBehavior类型,否则出错。
由“Protected FlyBehavior flyBehavior;Protected QuackBehavior quackBehavior;”及函数名可知该函数体应调用类FlyBehavior中的fly函数和类QuackBehavior中的quack函数。所以空(5)处和空(6)处应分别填入:flyBehavior.fly和quackBehavior.quack()。
由于Duck类为抽象类,因此需要一个抽象函数来描述鸭子的总体外观特征,所以空(7)处应填入abstract。
对于空(8)处和空(9)处,由题中所给信息可知RubberDuck是“发出橡皮与空气摩擦声”并且“不能飞行”的鸭子种类,因此构造函数中创建的对象flyBehavior和quackBehavior对应的类型分别为FlyNoWay和Squeak。
转载请注明原文地址:https://kaotiyun.com/show/rKDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
阅读以下基于VPN网络互连的网络规划设计的技术说明,根据要求回答问题1至问题3。【说明】某软件开发公司总部和子公司A、子公司B分别位于3个不同的省城,公司总部通过一台带VPN功能的防火墙与Internet连接。该防火墙支持PPTP、L2TP、IP
阅读以下在政务网中基于MPLS的IP-VPN应用服务的技术说明,回答问题1至问题5。【说明】为了保证政务外网各系统的安全,必须要为各系统的网络互联提供安全隔离及网络服务质量保证,使用基于MPLS的IP-VPN是在IP网上解决这种安全隔离的一种较好
阅读以下关于某硬件防火墙相关配置的技术说明,根据要求回答问题1至问题4。【说明】某单位在部署内部局域网时选用了一款硬件防火墙,该防火墙分别带有“WAN”、“LAN”“DMZ”、“FUN”等4个网络接口,支持Web界面、命令行等多种管理模式。该单位
非对称数字用户线(AsymmetricDigitalSubscriberLine,ADSL)是一种利用现有的传统电话线路高速传输数字信息的技术。ADSL技术可以充分利用现有铜线网路,只要在用户线路两端加装ADSL设备即可为用户提供服务。ADSL系统构
非对称数字用户线(AsymmetricDigitalSubscriberLine,ADSL)是一种利用现有的传统电话线路高速传输数字信息的技术。ADSL技术可以充分利用现有铜线网路,只要在用户线路两端加装ADSL设备即可为用户提供服务。ADSL系统构
某公司申请到的IP地址为193.136.99.0,如图7-4所示,为了便于管理,需建立4个子网(要求每个子网的掩码必须相同),请回答如下问题。
请用100字以内的文字说明该网管软件项目采用快速原型开发方法的优缺点。根据试题的描述信息分析,在最理想的情况下,需要多少天才能完成此网管软件开发任务?如果按保守的估计,则需要多少天才可完成此开发任务?(请列出简要的计算过程)
请说出图9-1的拓扑结构名称与特点。请比较交换机的堆叠与级联的区别。
请问无线局域网的工作模式有哪几种?当不使用AP时,必须把一组需要互相通信的无线网卡的什么值设为相同?
随机试题
单位在银行开立的人民币结算账户分为()。
抑制胃酸分泌作用最强的药物是
糖尿病患者在家注射正规胰岛素,出现极度饥饿、软弱、手抖、出汗、头晕等,此时应当
某承包商与建设单位签订建造一栋办公楼的合同,合同规定办公大楼的总造价为6000万元,则该合同是()。
E公司只产销一种甲产品,甲产品只消耗乙材料。2015年第4季度按定期预算法编制2016年的企业预算。部分预算资料如下:资料一:乙材料2016年年初的预计结存量为2000千克,各季度末乙材料的预计结存量数据如表1所示:每季度乙材料的购货款于当季支付40
国家在必要时设立特别行政区,在特别行政区内实行的制度由()规定。
英国医生约翰斯诺的“污水理论”开启了流行病学研究的历史。1854年,伦敦爆发了大规模的霍乱,约翰斯诺发现,大多数死亡病例都曾经饮用同一水泵汲取的水,而使用其他水泵或水井的人最初都没有感染霍乱。后经调查,下水道的废水污染了那个水泵,从而引发了霍乱。以下哪一选
设α1,α2,α3线性无关,β1可由α1,α2,α3线性表示,β2不可由α1,α2,α3线性表示,对任意的常数k有().
[*]
HowOnlineDatingWorksOneofthebasichumanimpulsesistodeveloparomanticrelationship——andmaybeevenfallinlove.
最新回复
(
0
)