问答题 阅读下列说明和Java代码,将应填入 (n) 处的字句写在对应栏内。
[说明]
某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征。需要模拟的飞机种类及其特征如表10.5所示。
表10.5飞机种类的特性
飞机种类 起飞特征 飞行特征
直升机(Helicopter) 垂直起飞(VerticalTakeOff) 亚音速飞行(SubSonicFly)
客机(AirPlane) 长距离起飞(LongDistanceTakeOff) 亚音速飞行(SubSonicFly)
歼击机(Fighter) 长距离起飞(LongDistanceTakeOff) 超音速飞行(SuperSonicFly)
鹞式战斗机(Harrier) 垂直起飞(VerticaITakeOff) 超音速飞行(SuperSonicFly)
为支持将来模拟更多种类的飞机,采用策略设计模式(Strategy)设计的类图如图10.12示。
【正确答案】(1) FlyBehavior flyBehavior (2) TakeOffBehavior takeOffBehavior
(3) flyBehavior.fly() (4) takeOffBehavior.takeOff()
(5) extends (6) SubSonicFly() (7) VerticalTakeOff()
【答案解析】[解析] 本题目考查设计模式中的策略设计模式。