问答题 [说明]
某游戏公司现欲开发一款面向儿童的模拟游戏,该游戏主要模拟现实世界中各种鸭子的发声特征、飞行特征和外观特征。游戏需要模拟的鸭子种类及其特征如下表所示。
游戏需要模拟的鸭子种类及其特征
鸭子种类 发声特征 飞行特征 外观特征
灰鸭(MallardDuck) 发出“嘎嘎”声(Quack) 用翅膀飞行(FlyWithWings) 灰色羽毛
红头鸭(RedHeadDuck) 发出“嘎嘎”声(Quack) 用翅膀飞行(FlyWithWings) 灰色羽毛、头部红色
棉花鸭(CottonDuck) 不发声(QuackNoWay) 不能飞行(FlyNoWay) 白色
橡皮鸭(RubberDuck) 发出橡皮与空气摩擦的声音
(Squeak)
不能飞行(FlyNoWrdy) 黑白橡皮色
为支持将来能够模拟更多种类鸭子的特征,采用策略设计模式(Strategy)设计的类图如下图所示。
【正确答案】
【答案解析】std
virtual void
virtual void
flyBehavior
quackBehavior
flyBehavior→fly( )
quackBehavior→quack( )
FlyNoWay( )
Squeak( )