2024年07月29日来源:信管网 作者:cnitpm
软件设计师案例分析当天每日一练试题地址:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4
往期软件设计师每日一练试题汇总:www.cnitpm.com/class/27/e4_1.html
软件设计师案例分析每日一练试题(2024/7/28)在线测试:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4&day=2024/7/28
点击查看:更多软件设计师习题与指导
软件设计师案例分析每日一练试题内容(2024/7/28)
试题七
阅读下列说明和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(){/*此处省略显示橡皮鸭的代码*/ }
};
//其他代码省略
信管网考友试题答案分享:
信管网cnitpm576347651358:
1、interfaces
2、interfaces
3、flybehavior
4、quackbehavior
5、flybehavior.flybehavior
6、quackbehavior.quackbehavior
7、abstract
8、flybehavior()
9、quackbehavior()
信管网cnitpm493877469991:
(1)interface
(2)interface
(3)flybehavior
(4)quackhavior
(5)flybehavior.fly()
(6)quackhavior.quack()
(7)abstract
(8)flynoway()
(9)squeak()
信管网cnitpm442723562920:
1、interface
<br>2、interface
<br>3、fly();
<br>4、quack();
<br>5、fly with wings();
<br>6、no fly way();
<br>7、status
<br>8、flybehavior()
<br>9、quackbehavior()
信管网cnitpm_wanghl:
1、interface
2、interface
3、flybehavior
4、quackbehavior
5、flybehavior.fly()
6、quackbehavior.quack()
7、static
8、flybehavior()
9、quackbehavior()
温馨提示:因考试政策、内容不断变化与调整,信管网提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!
相关推荐