首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和Java代码,应填入(n)处。 【说明】 某游戏公司现欲开发一款面向儿童的模拟游戏,该游戏主要模拟现实世界中各种鸭子的发声特征、飞行特征和外观特征。游戏需要模拟的鸭子种类及其特征如表10-7所示: 为支持将来能够模拟更
阅读下列说明和Java代码,应填入(n)处。 【说明】 某游戏公司现欲开发一款面向儿童的模拟游戏,该游戏主要模拟现实世界中各种鸭子的发声特征、飞行特征和外观特征。游戏需要模拟的鸭子种类及其特征如表10-7所示: 为支持将来能够模拟更
admin
2008-08-01
50
问题
阅读下列说明和Java代码,应填入(n)处。
【说明】
某游戏公司现欲开发一款面向儿童的模拟游戏,该游戏主要模拟现实世界中各种鸭子的发声特征、飞行特征和外观特征。游戏需要模拟的鸭子种类及其特征如表10-7所示:
为支持将来能够模拟更多种类鸭子的特征,采用策略设计模式(Strategy)设计的类图如图10-12所示:
其中,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()
解析
FlyBehavior与QuackBehavior分别表示抽象的飞行特征,它们仅仅规定了接口,因此空(1)和(2)应该填写interface;Duck是各种鸭子种类的基类,而每一种鸭子都具有飞行特征和发声特征,这两种特征分别通过FlyBehavior和QuackBehavior来实现,因此空(3)和(4)处应该为这两个类的对象引用,Duck的飞行动作和发声动作通过abstract与其飞行特征对象和发声特征对象相关,所以,直接调用这两个类的飞行和发声动作即可。因为每一种Duck的显示特征是不相同的,因此display方法应该为抽象的方法;每一种具体的鸭子种类的飞行特征和发声特征是不同的,因此,在每一种具体鸭子类的构造函数中需要指定其具有的飞行特征和发声特征。表10-7已经指出了RubberDuck的这两种特征分别为FlyNoWay和Squeak,所以,通过构造相应类的对象来实现该特征。
转载请注明原文地址:https://www.kaotiyun.com/show/afDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
典型的软件测试过程模型有(46)等,在这些模型中,(47)强调了测试计划等工作的先行和对系统需求和系统设计的测试,(48)对软件测试流程予以了说明。
在进行面向对象设计时,采用设计模式能够(29)。
(12)是指把数据以及操作数据的相关方法组合在同一个单元中,使我们可以把类作为软件中的基本复用单元,提高其内聚度,降低其耦合度。面向对象中的(13)机制是对现实世界中遗传现象的模拟,通过该机制,基类的属性和方法被遗传给派生类。
利用高速通信网络将多台高性能工作站或微型机互连构成机群系统,其系统结构形式属于(5)计算机。
针对电子政务类应用系统的功能测试,为设计有效的测试用例,应(34)。
GB/T18905.5《软件工程产品评价》中,分别规定了开发者用、需方用、评价者用的过程,以下理解正确的是______。A.计划开发新产品的厂商,该标准中规定不允许利用他们自己的技术人员进行产品评价B.软件产品的一般评价过程是:确立评价需求,规定、设
以下关于软件生命周期的叙述不正确的是______。A.软件生命周期包括以下几个阶段:项目规划、需求定义和需求分析、软件设计、程序编码、软件测试、运行维护B.程序编码阶段是将软件设计的结果转换成计算机可运行的程序代码。为了保证程序的可读性、易维护性和提高
在数据库逻辑设计阶段,若实体中存在多值属性,那么将E-R图转换为关系模式时,___________,得到的关系模式属于4NF。
结构化开发方法中,(35)主要包含对数据结构和算法的设计。对算法设计时,其主要依据来自(36)。描述算法时,(37)不是理想的表达方式。(35)
模块A的功能为:从数据库中读出产品信息,修改后存回数据库,然后将修改记录写到维护文件中。该模块内聚类型为(38)内聚。以下关于该类内聚的叙述中,正确的是(39)。(39)
随机试题
治疗慢性再生障碍性贫血的首选药物是
女患者,停经45天,尿妊娠试验阳性,恶心呕吐一周,呕吐清涎,神疲思睡,舌淡苔白润,脉缓滑无力。应属于
A.栓剂B.片剂C.散剂D.气雾剂E.膜剂需要进行硬度检查的剂型是
人体初次感染结核菌后出现的肺结核类型是
甲股份有限公司(本题下称“甲公司”)为上市公司,其相关交易或事项如下:资料一:经相关部门批准,甲公司于2017年1月1日按面值发行分期付息、到期一次还本的可转换公司债券200000万元,每份债券面值100元,实际募集资金已存入银行专户。根据可转
甲、乙、丙、丁四人拟共同出资设立一个贸易有限责任公司,注册资本为100万元。其草拟的公司章程记载的下列事项中,符合公司法律制度规定的是()。
一、注意事项1.本题由给定资料与作答要求两部分构成。考试时限为150分钟。其中,阅读给定资料参考时限为40分钟,作答参考时限为110分钟。满分100分。2.请在题本、答题卡指定位置上用黑色字迹的钢笔或签字笔填写自己的姓名和准考证号,并用2B铅笔在准考证
如果要被试对正确肯定的句子和正确否定的句子做反应,反应速度可能会()
Inthelate1960’s,manypeopleinNorthAmericaturnedtheirattentiontoenvironmentalproblems,andnewsteel-and-glassskysc
(2012年上半年)关于信息系统集成项目的特点,下述说法中,(3)是不正确的。
最新回复
(
0
)