首页
试卷库
试题库
当前位置:
X题卡
>
所有题目
>
题目详情
阅读下列说明和C++代码,将应填入 (n) 处的字句写在对应栏内。 [说明] 某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征。需要模拟的飞机种类及...
查看本题答案
包含此试题的试卷
中级软件设计师《填空集》真题及答案
点击查看
你可能感兴趣的试题
试题六阅读以下说明和Java代码将应填入n处的语句或语句成分写在答题纸的对应栏内【说明】某数据
阅读以下说明和C++程序将应填入____处的字句写在答题纸的对应栏内 下面程序实现十进制向其他进制的
试题六阅读以下说明和Java代码将应填入n处的语句或语句成分写在答题纸的对应栏内【说明】某数据
试题五阅读以下说明和C++代码将应填入n处的语句或语句成分写在答题纸的对应栏内【说明】某数据文
试题五阅读以下说明和C++代码将应填入n处的语句或语句成分写在答题纸的对应栏内【说明】某数据文
试题五阅读以下说明和C++代码将应填入n处的语句或语句成分写在答题纸的对应栏内【说明】某数据文
试题六阅读以下说明和Java代码将应填入n处的语句或语句成分写在答题纸的对应栏内【说明】某数据
试题六阅读以下说明和Java代码将应填入n处的语句或语句成分写在答题纸的对应栏内【说明】某数据
试题五阅读以下说明和C++代码将应填入n处的语句或语句成分写在答题纸的对应栏内【说明】某数据文
试题六阅读以下说明和Java代码将应填入n处的语句或语句成分写在答题纸的对应栏内【说明】某数据
试题六 阅读下列说明和JAVA代码将应填入n处的字句写在答题纸的对应栏内 【说明】 现欲构造一文/
试题五 阅读下列说明和C++代码将应填入____n____处的字句写在答题纸的对应栏内 [说明]
试题六阅读以下说明和Java代码将应填入n处的语句或语句成分写在答题纸的对应栏内【说明】某数据
从下列的3道题试题五至试题七中任选1道解答如果解答的试题超过1道则题号小的1道解答有效 试题五
阅读以下说明和Java程序将应填入____处的字句写在答题纸的对应栏内 下面程序实现十进制向其他进制
阅读以下说明和JAVA代码将应填入n处的字句写在答题纸的对应栏内 【说明】 类Queue表示队列类
试题五阅读以下说明和C++代码将应填入n处的语句或语句成分写在答题纸的对应栏内【说明】某数据文
试题六阅读以下说明和Java代码将应填入n处的语句或语句成分写在答题纸的对应栏内【说明】某数据
阅读以下说明和c++代码将应填入n处的字句写在答题纸的对应栏内 【说明】 通常情况下用户可以对应用
试题五阅读以下说明和C++代码将应填入n处的语句或语句成分写在答题纸的对应栏内【说明】某数据文
热门试题
更多
阅读下列说明图及Java程序将应填入n处的字句写在对应栏内 [说明] 某订单管理系统的部分UML类图如图18-4所示 在图18-4中Product表示产品ProductList表示所销售产品的列表Order表示产品订单OrderItem表示产品订单中的一个条目OrderList表示订单列表SalesSystem提供 订单管理系统的操作接口各个类的部分属性和方法说明如表18-3所示 可以使用类Java.util.ArrayList<E>来实现对象的聚集关系如图18-4中OrderList与Order之间的聚集关系 for-each循环提供了一种遍历对象集合的简单方法在for-each循环中可以指定需要遍历的对象集合以及用来接收集合中每个元素的变量其语法如下 for用来接收集合中元素的变量需要遍历的对象集合 如果要使用for-each循环遍历对象集合那么包含该对象集合的类必须实现接口Java.util.Iterable<T> Java程序1和Java程序2分别给出了类OrderList和方法statistic的Java代码 [Java程序1] importjava.util.* publicclassOrderList1 privateArrayList<Order>orders publicOrderLiSt this.orders=newArrayList<Order> publicvoidaddOrderOrderorder this.orders.addorder publicIterator<Order>iterator return2 publicintgetNumberoforders returnthis.orders.slze [Java程序2] importJava.util.* publicclassSalesSystem privateProductListcatalog privateOrderListsales privatestaticPrintWriterstdOut=newPrintWriterSystem.outtrue publicvoidstatistiC forProductproduct3 intnumber=0 forOrderorder4 for5order ifproduct.equalsitem.getProduct number+=item.getQuantity stdOut.printInproduct.getCode+"" +product.getDescription+"" +number+""+number*product.getPrice //其余的方法未列出 3处填
阅读以下说明及Java程序将应填入n处的字句写在对应栏内 [说明] 传输门是传输系统中的重要装置传输门具有Open打开Closed已关闭Opening正在打开StayOpen保持打开Closing正在关闭5种状态触发状态的转换事件有crickcomplete和timeout三种事件与其相应的状态转换如图18-6所示 下面的“Java代码1”与“Java代码2”分别用两种不同的设计思路对传输门进行状态模拟请填补代码中的空缺 [Java代码1] pubZicclassDoor publicstaticfinalintCLOSED=1publicstaticfinalintOPENING=2 publicstaticfinalintOPEN=3publicstaticfinalintCLOSING=4 publicstaticfinalintSTAYOPEN=5privateintstare=CLOSED //定义状态变量用不同的整数表示不同状态 privatevoidsetStateintstatethis.stale=stare //设置传输门当前状态 publicvoidgetState //此处代码省略本方法输出状态字符串 //例如当前状态为CLOSED时输出字符串为"CLOSED" publicvoidclick//发生click事件时进行状态转换 if1setStateOPENING elseif2setStareCLOSZNG elseif3setStareSTAYOPEN //发生timeout事件时进行状态转换 publicvoidtimeoutifstate==OPENsetStateCLOSING pubncvoidcomplete//发生complete事件时进行状态转换 ifstate==OPENINGsetStateOPEN elseifstate==CLOSINGsetStateCLOSED publicStaticvoidmainString[]args DooraDoor=newDoor aDoor.geLStaLeaDoor.clickaDoor.getStateaDoor.complete aDoor.getStateaDoor.clickaDoor.getStateaDoor.clik aDoor.getStatereturn [Java代码2] publicclassDoor publicfinalDoorStateCLOSED=newDoorClosedthis publicfinalDoorStateOPENING=newDooropeningthis publicfinalDoorStateOPEN=newDoorOpenthis publicfinalDoorStateCLOSING=newDoorClosingthis publicfinalDoorStateSTAYOPEN=newDoorStayopenthis privateDoorStatestate=CLOSED //设置传输门当前状态 publicvoidsetStateDoorStatestatethis.state=state publicvoidgetState//根据当前状态输出对应的状态字符串 System.out.printInstate.getClass.getName publicvoidclick4//发生click事件时进行状态转换 publicvoidtimeout5//发生timeout事件时进行状态转换 publicvoidcomplete6//发生complete事件时进行状态转换 publicstaticvoidmainString[]args DooraDoor=newDoor aDoor.getStateaDoor.ClickaDoor.getStateaDoor.complete aDoor.getstateaDoor.timeoutaDoor.getStatereturn publicabstractclassDoorState//定义所有状态类的基类 protectedDoordoor publicDoorStateDoordoorthis.door=door publicvoidclick publiccoidcomplete publicvoidtimeout classDoorClosedextendsDoorState//定义一个基本的Closed状态 publicDoorClosedDoordoorsuperdoor publicvoidclick7 //该类定义的其余代码省略 //其余代码省略 3处填
阅读下列说明和Java代码将应填入n处的字句写在对应栏内 [说明] 已知某企业的采购审批是分级进行的即根据采购金额的不同由不同层次的主管人员来审批主任可以审批5万元以下不包括5万元的采购单副董事长可以审批5万元至10万元不包括10万元的采购单董事长可以审批10万元至50万元不包括50万元的采购单50万元及以上的采购单就需要开会讨论决定 采用责任链设计模式ChainofResponsibility对上述过程进行设计后得到的类图如图18-10所示 [Java代码] classPurchaseRequest publicdoubleAmount//采购的金额 publicintNumber//采购单编号 publicStringPurpose//采购目的 classApprover//审批者类 publicApproversuccessor=null publicvoidProcessRequestPurchaseRequestaRequest ifsuccessor!=nullsuccessor.1 publicvoidSetSuccessorApproveraSuccesssorsuccessor=aSuccesssor private2successor ClassCongressextendsApprover publicvoidProcessRequestPurchaseRequestaRequest ifaRequest.Amount>=500000/*决定是否审批的代码省略*/ else3.ProcessRequestaRequest classDirectorextendsApprover publicvoidProcessRequestPurchaseRequestaRequest/*此处代码省略*/ classPresidentextendsApprover publicvoidProcessRequestpurchaseRequestaRequest/*此处代码省略*/ classVicePresidentextendsApprover publicvoidProcessRequestpurchaseRequestaRequest/*此处代码省略*/ publicclassrs publicstaticvoidmainString[]argsthrowsIOException CongressMeeting=newCongress VicePresidentSam=newVicePresident DirectorLarry=newDirector PresidentTammy=newPresident //构造责任链 Meeting.SetSuccessornullSam.SetSuccessor4 Tammy.SetSuccessor5Larry.SetSuccessor6 //构造采购审批请求 PurchaseRequestaRequest=newPurchaseRequest BufferedReaderbr=newBufferedReadernewInputStreamReaderSystem.in aRequest.Amount=Double.parseDoublebr.readLine 7.ProcessRequestaRequest//开始审批 return 5处填
阅读下列说明和Java代码将应填入n处的字句写在对应栏内 [说明] 某游戏公司现欲开发一款面向儿童的模游戏该游戏主要模拟现实世界中各种鸭子的发声特征飞行特征和外观特征游戏需要模拟的鸭子种类及其特征如表18-5所示 为支持将来能够模拟更多种类鸭子的特征采用策略设计模式Strategy设计的类图如图18-8所示 其中Duck为抽象类描述了抽象的鸭子而类RubberDuckMallardDuckCottonDuck和RedHeadDuck分别描述具体的鸭子种类方法flyquack和display分别表示不同种类的鸭子都具有飞行特征发声特征和外观特征接NFlyBehavior与QuackBehavior分别用于表示抽象的飞行行为与发声行为类FlyNoWay与FlyWithWings分别描述不能飞行的行为和用翅膀飞行的行为类QuackSqueak与QuackNoWay分别描述发出“嘎嘎”声的行为发出橡皮与空气摩擦声的行为与不发声的行为请填补以下Java代码中的空缺 [Java代码] 1FlyBehavior publicvoidfly 2QuackBehavior publicvoidquack classFlyWithWingsimplementsFlyBehaVior publicvoidflySystem.out.println"使用翅膀飞行!" classFlyNoWayimplementsFlyBehaVior publicvoidflySystem.out.println"不能飞行!" classQuackimplementsQuackBehavior publicvoidquackSystem.out.println"发出/’嘎嘎/’声!" classSqueakimplementsQuackBehavior publicvoidquackSystem.out.println"发出空气与橡皮摩擦声!" classQuackNoWayimplementsQuackBehaVior publicvoidquackSystem.out.println"不能发声!" abstractclassDuck protectedFlyBehavior3 protectedQuackBehavior4 publicvoidfly5 publicvoidquack6 public7voiddisplay classRubberDuckextendsDuck publicRubberDuck flyBehavior=Fiew8 quackBehavior=new9 publicvoiddisplay/*此处省略显示橡皮鸭的代码*/ //其他代码省略 1处填
阅读以下说明及Java程序将应填入n处的字句写在对应栏内 [说明] 传输门是传输系统中的重要装置传输门具有Open打开Closed已关闭Opening正在打开StayOpen保持打开Closing正在关闭5种状态触发状态的转换事件有crickcomplete和timeout三种事件与其相应的状态转换如图18-6所示 下面的“Java代码1”与“Java代码2”分别用两种不同的设计思路对传输门进行状态模拟请填补代码中的空缺 [Java代码1] pubZicclassDoor publicstaticfinalintCLOSED=1publicstaticfinalintOPENING=2 publicstaticfinalintOPEN=3publicstaticfinalintCLOSING=4 publicstaticfinalintSTAYOPEN=5privateintstare=CLOSED //定义状态变量用不同的整数表示不同状态 privatevoidsetStateintstatethis.stale=stare //设置传输门当前状态 publicvoidgetState //此处代码省略本方法输出状态字符串 //例如当前状态为CLOSED时输出字符串为"CLOSED" publicvoidclick//发生click事件时进行状态转换 if1setStateOPENING elseif2setStareCLOSZNG elseif3setStareSTAYOPEN //发生timeout事件时进行状态转换 publicvoidtimeoutifstate==OPENsetStateCLOSING pubncvoidcomplete//发生complete事件时进行状态转换 ifstate==OPENINGsetStateOPEN elseifstate==CLOSINGsetStateCLOSED publicStaticvoidmainString[]args DooraDoor=newDoor aDoor.geLStaLeaDoor.clickaDoor.getStateaDoor.complete aDoor.getStateaDoor.clickaDoor.getStateaDoor.clik aDoor.getStatereturn [Java代码2] publicclassDoor publicfinalDoorStateCLOSED=newDoorClosedthis publicfinalDoorStateOPENING=newDooropeningthis publicfinalDoorStateOPEN=newDoorOpenthis publicfinalDoorStateCLOSING=newDoorClosingthis publicfinalDoorStateSTAYOPEN=newDoorStayopenthis privateDoorStatestate=CLOSED //设置传输门当前状态 publicvoidsetStateDoorStatestatethis.state=state publicvoidgetState//根据当前状态输出对应的状态字符串 System.out.printInstate.getClass.getName publicvoidclick4//发生click事件时进行状态转换 publicvoidtimeout5//发生timeout事件时进行状态转换 publicvoidcomplete6//发生complete事件时进行状态转换 publicstaticvoidmainString[]args DooraDoor=newDoor aDoor.getStateaDoor.ClickaDoor.getStateaDoor.complete aDoor.getstateaDoor.timeoutaDoor.getStatereturn publicabstractclassDoorState//定义所有状态类的基类 protectedDoordoor publicDoorStateDoordoorthis.door=door publicvoidclick publiccoidcomplete publicvoidtimeout classDoorClosedextendsDoorState//定义一个基本的Closed状态 publicDoorClosedDoordoorsuperdoor publicvoidclick7 //该类定义的其余代码省略 //其余代码省略 5处填
阅读下列说明图及Java程序将应填入n处的字句写在对应栏内 [说明] 某订单管理系统的部分UML类图如图18-4所示 在图18-4中Product表示产品ProductList表示所销售产品的列表Order表示产品订单OrderItem表示产品订单中的一个条目OrderList表示订单列表SalesSystem提供 订单管理系统的操作接口各个类的部分属性和方法说明如表18-3所示 可以使用类Java.util.ArrayList<E>来实现对象的聚集关系如图18-4中OrderList与Order之间的聚集关系 for-each循环提供了一种遍历对象集合的简单方法在for-each循环中可以指定需要遍历的对象集合以及用来接收集合中每个元素的变量其语法如下 for用来接收集合中元素的变量需要遍历的对象集合 如果要使用for-each循环遍历对象集合那么包含该对象集合的类必须实现接口Java.util.Iterable<T> Java程序1和Java程序2分别给出了类OrderList和方法statistic的Java代码 [Java程序1] importjava.util.* publicclassOrderList1 privateArrayList<Order>orders publicOrderLiSt this.orders=newArrayList<Order> publicvoidaddOrderOrderorder this.orders.addorder publicIterator<Order>iterator return2 publicintgetNumberoforders returnthis.orders.slze [Java程序2] importJava.util.* publicclassSalesSystem privateProductListcatalog privateOrderListsales privatestaticPrintWriterstdOut=newPrintWriterSystem.outtrue publicvoidstatistiC forProductproduct3 intnumber=0 forOrderorder4 for5order ifproduct.equalsitem.getProduct number+=item.getQuantity stdOut.printInproduct.getCode+"" +product.getDescription+"" +number+""+number*product.getPrice //其余的方法未列出 5处填
阅读下列说明和C++代码将应填入n处的字句写在对应栏内 [说明] 某游戏公司现欲开发一款面向儿童的模拟游戏该游戏主要模拟现实世界中各种鸭子的发声特征飞行特征和外观特征游戏需要模拟的鸭子种类及其特征如表18-4所示 为支持将来能够模拟更多种类鸭子的特征采用策略设计模式Strategy设计的类图如图18-7所示 其中Duck为抽象类描述了抽象的鸭子而类RubberDuckMallardDuckCottonDuck和RedHeadDuck分别描述具体的鸭子种类方法flyquack和display分别表示不同种类的鸭子都具有飞行特征发声特征和外观特征类FlyBehavior与QuackBehavior为抽象类分别用于表示抽象的飞行行为与发声行为类FlyNoWay与FlyWithWings分别描述不能飞行的行为和用翅膀飞行的行为类QuackSqueak与QuackNoWay分别描述发出“嘎嘎”声的行为发出橡皮与空气摩擦声的行为与不发声的行为请填补以下C++代码中的空缺 [C++代码] #include<iostream> usingnamespace1 classFlyBehavior public2fly=0 classQuackBehavior public3quack=0 classFlyWithWingspublicFlyBehavior publicvoidflycout<<"使用翅膀飞行!">>end1 classFlyNoWaypublicFlyBehavior publicvoidflycout"不能飞行!"end1 classQuackpublicQuackBehavior publicvoidquack"cout发出/’嘎嘎/’声!”end1 classSqueakpublicQuackBehavior publicvoidquackcout<<"发出空气与橡皮摩擦声!">>end1 classQuackNoWaypublicQuackBehavior publicvoidquackcout<<"不能发声!">>end1 classDuck protected FlyBehavior*4 QuackBehavior*5 public voidfly6 voidquack7 virtualvoiddisplay=0 classRubberDuckpublicDuck public RubberDuck flyBehavior=new8 quackBehavior=new9 RubberDuck if!flyBehaviordeleteflyBehavior if!quackBehaviordeletequackBehavior voiddisplay/*此处省略显示橡皮鸭的代码*/ //其他代码省略 6处填
阅读下列说明和C++代码将应填入n处的字句写在对应栏内 [说明] 已知某企业的采购审批是分级进行的即根据采购金额的不同由不同层次的主管人员来审批主任可以审批5万元以下不包括5万元的采购单副董事长可以审批5万元至10万元不包括10万元的采购单董事长可以审批10万元至50万元不包括50万元的采购单50万元及以上的采购单就需要开会讨论决定 采用责任链设计模式ChainofResponsibility对上述过程进行设计后得到的类图如图18-9所示 [C++代码] #include<string> #include<iostream> usingnamespacestd classPurchaseRequest public doubleAmount//采购的金额 intNumber//采购单编号 stringPurpose//采购目的 classApprover//审批者类 public Approversuccessor=NULL virtualvoidProcessRequestPurchaseRequestaRequest ifsuccessor!=NULLsuccessor->1 voidSetSuccessorApprover*aSucceSSsorsuccessor=aSuccesssor private 2successor classCongresspublicApprover public voidProcessRequestPurchaseRequeStaRequest ifaRequest.Amount>=500000/*决定是否审批的代码省略*/ else3ProceSsRequestaRequest classDirectorpublicApprover publlc voidProcessRequestPurchaseRequestaRequest/*此处代码省略*/ classPresidentpublicApprover public voidProcessRequestPurchaseRequestaRequest/*此处代码省略*/ classVicePresidentpublicApprover public voidProcessRequestPurchaseRequestaRequest/*此处代码省略*/ voidmsin CongressMeetingVicePresidentSamDirectorLarryPresidentTammy //构造责任链 Meeting.SetSuccessorNULLSam.SetSuccessor4 Tammy.SetSuccessor5Larry.SetSuccessot6 PurchaseRequestaRequest//构造采购审批请求 cin>>aRequest.Amount//输入采购请求的金额 7.ProcessRequestaRequest//开始审批 return 6处填
阅读以下说明及Java程序将应填入n处的字句写在对应栏内 [说明] 传输门是传输系统中的重要装置传输门具有Open打开Closed已关闭Opening正在打开StayOpen保持打开Closing正在关闭5种状态触发状态的转换事件有crickcomplete和timeout三种事件与其相应的状态转换如图18-6所示 下面的“Java代码1”与“Java代码2”分别用两种不同的设计思路对传输门进行状态模拟请填补代码中的空缺 [Java代码1] pubZicclassDoor publicstaticfinalintCLOSED=1publicstaticfinalintOPENING=2 publicstaticfinalintOPEN=3publicstaticfinalintCLOSING=4 publicstaticfinalintSTAYOPEN=5privateintstare=CLOSED //定义状态变量用不同的整数表示不同状态 privatevoidsetStateintstatethis.stale=stare //设置传输门当前状态 publicvoidgetState //此处代码省略本方法输出状态字符串 //例如当前状态为CLOSED时输出字符串为"CLOSED" publicvoidclick//发生click事件时进行状态转换 if1setStateOPENING elseif2setStareCLOSZNG elseif3setStareSTAYOPEN //发生timeout事件时进行状态转换 publicvoidtimeoutifstate==OPENsetStateCLOSING pubncvoidcomplete//发生complete事件时进行状态转换 ifstate==OPENINGsetStateOPEN elseifstate==CLOSINGsetStateCLOSED publicStaticvoidmainString[]args DooraDoor=newDoor aDoor.geLStaLeaDoor.clickaDoor.getStateaDoor.complete aDoor.getStateaDoor.clickaDoor.getStateaDoor.clik aDoor.getStatereturn [Java代码2] publicclassDoor publicfinalDoorStateCLOSED=newDoorClosedthis publicfinalDoorStateOPENING=newDooropeningthis publicfinalDoorStateOPEN=newDoorOpenthis publicfinalDoorStateCLOSING=newDoorClosingthis publicfinalDoorStateSTAYOPEN=newDoorStayopenthis privateDoorStatestate=CLOSED //设置传输门当前状态 publicvoidsetStateDoorStatestatethis.state=state publicvoidgetState//根据当前状态输出对应的状态字符串 System.out.printInstate.getClass.getName publicvoidclick4//发生click事件时进行状态转换 publicvoidtimeout5//发生timeout事件时进行状态转换 publicvoidcomplete6//发生complete事件时进行状态转换 publicstaticvoidmainString[]args DooraDoor=newDoor aDoor.getStateaDoor.ClickaDoor.getStateaDoor.complete aDoor.getstateaDoor.timeoutaDoor.getStatereturn publicabstractclassDoorState//定义所有状态类的基类 protectedDoordoor publicDoorStateDoordoorthis.door=door publicvoidclick publiccoidcomplete publicvoidtimeout classDoorClosedextendsDoorState//定义一个基本的Closed状态 publicDoorClosedDoordoorsuperdoor publicvoidclick7 //该类定义的其余代码省略 //其余代码省略 7处填
阅读下列说明和C++代码将应填入n处的字句写在对应栏内 [说明] 某游戏公司现欲开发一款面向儿童的模拟游戏该游戏主要模拟现实世界中各种鸭子的发声特征飞行特征和外观特征游戏需要模拟的鸭子种类及其特征如表18-4所示 为支持将来能够模拟更多种类鸭子的特征采用策略设计模式Strategy设计的类图如图18-7所示 其中Duck为抽象类描述了抽象的鸭子而类RubberDuckMallardDuckCottonDuck和RedHeadDuck分别描述具体的鸭子种类方法flyquack和display分别表示不同种类的鸭子都具有飞行特征发声特征和外观特征类FlyBehavior与QuackBehavior为抽象类分别用于表示抽象的飞行行为与发声行为类FlyNoWay与FlyWithWings分别描述不能飞行的行为和用翅膀飞行的行为类QuackSqueak与QuackNoWay分别描述发出“嘎嘎”声的行为发出橡皮与空气摩擦声的行为与不发声的行为请填补以下C++代码中的空缺 [C++代码] #include<iostream> usingnamespace1 classFlyBehavior public2fly=0 classQuackBehavior public3quack=0 classFlyWithWingspublicFlyBehavior publicvoidflycout<<"使用翅膀飞行!">>end1 classFlyNoWaypublicFlyBehavior publicvoidflycout"不能飞行!"end1 classQuackpublicQuackBehavior publicvoidquack"cout发出/’嘎嘎/’声!”end1 classSqueakpublicQuackBehavior publicvoidquackcout<<"发出空气与橡皮摩擦声!">>end1 classQuackNoWaypublicQuackBehavior publicvoidquackcout<<"不能发声!">>end1 classDuck protected FlyBehavior*4 QuackBehavior*5 public voidfly6 voidquack7 virtualvoiddisplay=0 classRubberDuckpublicDuck public RubberDuck flyBehavior=new8 quackBehavior=new9 RubberDuck if!flyBehaviordeleteflyBehavior if!quackBehaviordeletequackBehavior voiddisplay/*此处省略显示橡皮鸭的代码*/ //其他代码省略 4处填
阅读下列说明和Java代码将应填入n处的字句写在对应栏内 [说明] 某游戏公司现欲开发一款面向儿童的模游戏该游戏主要模拟现实世界中各种鸭子的发声特征飞行特征和外观特征游戏需要模拟的鸭子种类及其特征如表18-5所示 为支持将来能够模拟更多种类鸭子的特征采用策略设计模式Strategy设计的类图如图18-8所示 其中Duck为抽象类描述了抽象的鸭子而类RubberDuckMallardDuckCottonDuck和RedHeadDuck分别描述具体的鸭子种类方法flyquack和display分别表示不同种类的鸭子都具有飞行特征发声特征和外观特征接NFlyBehavior与QuackBehavior分别用于表示抽象的飞行行为与发声行为类FlyNoWay与FlyWithWings分别描述不能飞行的行为和用翅膀飞行的行为类QuackSqueak与QuackNoWay分别描述发出“嘎嘎”声的行为发出橡皮与空气摩擦声的行为与不发声的行为请填补以下Java代码中的空缺 [Java代码] 1FlyBehavior publicvoidfly 2QuackBehavior publicvoidquack classFlyWithWingsimplementsFlyBehaVior publicvoidflySystem.out.println"使用翅膀飞行!" classFlyNoWayimplementsFlyBehaVior publicvoidflySystem.out.println"不能飞行!" classQuackimplementsQuackBehavior publicvoidquackSystem.out.println"发出/’嘎嘎/’声!" classSqueakimplementsQuackBehavior publicvoidquackSystem.out.println"发出空气与橡皮摩擦声!" classQuackNoWayimplementsQuackBehaVior publicvoidquackSystem.out.println"不能发声!" abstractclassDuck protectedFlyBehavior3 protectedQuackBehavior4 publicvoidfly5 publicvoidquack6 public7voiddisplay classRubberDuckextendsDuck publicRubberDuck flyBehavior=Fiew8 quackBehavior=new9 publicvoiddisplay/*此处省略显示橡皮鸭的代码*/ //其他代码省略 3处填
阅读以下说明和C++代码将应填入n处的字句写在对应栏内 [说明] 传输门是传输系统中的重要装置传输门具有Open打开Closed已关闭Opening正在打开StayOpen保持打开Closing正在关闭5种状态触发传输门状态转换的事件有crickcomplete和timeout三种事件与其相应的状态转换如图18-5所示 下面的“C++代码1”与“C++代码2”分别用两种不同的设计思路对传输门进行状态模拟请填补代码中的空缺 [C++代码1] constintCLOSED=1constintOPENING=2 constintOPEN=3constintCLOSZNG=4 constintSTAYOPEN=5//定义状态变量用不同整数表示不同状态 classDoor private intstate//传输门当前状态 voidsetStateintstatethis->state=state//设置当前状态 public DoorstateCLOSED voidgetstate//根据当前状态输出相应的字符串 switchstate caseOPENING://cout<<""OPENING""<<end1break caseCLOSED://cout<<"CLOSED"<<end1break caseOPENcout<<"OPEN"<<end1break caseCLOSZNG://cout<<"CLOSZNG"<<end1break caseSTAYOPENcout<<"STAYOPEN"<<end1break voidcliok//发生click事件时进行状态转换 if1setStsateOPENING elseif2setStateCLOSZNG elseif3aetStateSTAYOPEN voidtimeout//发生timeout事件时进行状态转换 ifstate==OPENsetStateCLOSZNG voidcomplete//发生complete事件时进行状态转换 ifstate==OPENINGsetStateOPEN elseifstate==CLOSZNGsetStateCLOSED intmain DooraDoor aDoor.getStateaDoor.clickaDoor.getStaLeaDoor.Complete aDoor.getStateaDoor.clickaDoor.getStateaDoor.click aDoor.getStatereturn0 [C++代码2] ClassDoor public Doorstate*CLOSED*OPENING*0PEN*CLOSZNG*STAYOPEN*state Door virtual~Door……//释放申请的内存此处代码省略 voidsetStateDoorstate*statethis->state=state voidgetState //此处代码省略本方法输出状态字符串 //例如当前状态为CLOSED时输出字符串为"CLOSED" voidC1ick voidtimeout voidcomplete DoorDoor CLOSED=newDoorClosedthisOPENING=newDooropeningthis OPEN=newDoorOpenthisCLOSING=newDoorClosingthis STAYOPEN=newDoorStayOpenthisstate=CLOSED:// voidDoorC1ick4 voidDoortimeout5 voidDoorcomplete6 classDoorState//定义一个抽象的状态它是所有状态类的基类 protectedDoor*door public DoorStateDoor*doorthis->door=door virtual~DoorStatevoid virtualvoidclick virtualvoidcomplete virtualvoidtimeout classDoorClosedPubliCDoorState//定义一个基本的Closed状态 public DoorClosedDoor*doorDoorStatedoor Virtual~DoorClosed voidclick voidDoorClosedclick7 intmain DooraDoor aDoor.getStateaDoor.clickaDoor.getStateaDoor.complete aDoor.getStateaDoor.timeoutaDoor.getStatereturn0 6处填
阅读下列说明和C++代码将应填入n处的字句写在对应栏内 [说明] 某游戏公司现欲开发一款面向儿童的模拟游戏该游戏主要模拟现实世界中各种鸭子的发声特征飞行特征和外观特征游戏需要模拟的鸭子种类及其特征如表18-4所示 为支持将来能够模拟更多种类鸭子的特征采用策略设计模式Strategy设计的类图如图18-7所示 其中Duck为抽象类描述了抽象的鸭子而类RubberDuckMallardDuckCottonDuck和RedHeadDuck分别描述具体的鸭子种类方法flyquack和display分别表示不同种类的鸭子都具有飞行特征发声特征和外观特征类FlyBehavior与QuackBehavior为抽象类分别用于表示抽象的飞行行为与发声行为类FlyNoWay与FlyWithWings分别描述不能飞行的行为和用翅膀飞行的行为类QuackSqueak与QuackNoWay分别描述发出“嘎嘎”声的行为发出橡皮与空气摩擦声的行为与不发声的行为请填补以下C++代码中的空缺 [C++代码] #include<iostream> usingnamespace1 classFlyBehavior public2fly=0 classQuackBehavior public3quack=0 classFlyWithWingspublicFlyBehavior publicvoidflycout<<"使用翅膀飞行!">>end1 classFlyNoWaypublicFlyBehavior publicvoidflycout"不能飞行!"end1 classQuackpublicQuackBehavior publicvoidquack"cout发出/’嘎嘎/’声!”end1 classSqueakpublicQuackBehavior publicvoidquackcout<<"发出空气与橡皮摩擦声!">>end1 classQuackNoWaypublicQuackBehavior publicvoidquackcout<<"不能发声!">>end1 classDuck protected FlyBehavior*4 QuackBehavior*5 public voidfly6 voidquack7 virtualvoiddisplay=0 classRubberDuckpublicDuck public RubberDuck flyBehavior=new8 quackBehavior=new9 RubberDuck if!flyBehaviordeleteflyBehavior if!quackBehaviordeletequackBehavior voiddisplay/*此处省略显示橡皮鸭的代码*/ //其他代码省略 8处填
阅读以下说明和C++代码将应填入n处的字句写在对应栏内 [说明] 传输门是传输系统中的重要装置传输门具有Open打开Closed已关闭Opening正在打开StayOpen保持打开Closing正在关闭5种状态触发传输门状态转换的事件有crickcomplete和timeout三种事件与其相应的状态转换如图18-5所示 下面的“C++代码1”与“C++代码2”分别用两种不同的设计思路对传输门进行状态模拟请填补代码中的空缺 [C++代码1] constintCLOSED=1constintOPENING=2 constintOPEN=3constintCLOSZNG=4 constintSTAYOPEN=5//定义状态变量用不同整数表示不同状态 classDoor private intstate//传输门当前状态 voidsetStateintstatethis->state=state//设置当前状态 public DoorstateCLOSED voidgetstate//根据当前状态输出相应的字符串 switchstate caseOPENING://cout<<""OPENING""<<end1break caseCLOSED://cout<<"CLOSED"<<end1break caseOPENcout<<"OPEN"<<end1break caseCLOSZNG://cout<<"CLOSZNG"<<end1break caseSTAYOPENcout<<"STAYOPEN"<<end1break voidcliok//发生click事件时进行状态转换 if1setStsateOPENING elseif2setStateCLOSZNG elseif3aetStateSTAYOPEN voidtimeout//发生timeout事件时进行状态转换 ifstate==OPENsetStateCLOSZNG voidcomplete//发生complete事件时进行状态转换 ifstate==OPENINGsetStateOPEN elseifstate==CLOSZNGsetStateCLOSED intmain DooraDoor aDoor.getStateaDoor.clickaDoor.getStaLeaDoor.Complete aDoor.getStateaDoor.clickaDoor.getStateaDoor.click aDoor.getStatereturn0 [C++代码2] ClassDoor public Doorstate*CLOSED*OPENING*0PEN*CLOSZNG*STAYOPEN*state Door virtual~Door……//释放申请的内存此处代码省略 voidsetStateDoorstate*statethis->state=state voidgetState //此处代码省略本方法输出状态字符串 //例如当前状态为CLOSED时输出字符串为"CLOSED" voidC1ick voidtimeout voidcomplete DoorDoor CLOSED=newDoorClosedthisOPENING=newDooropeningthis OPEN=newDoorOpenthisCLOSING=newDoorClosingthis STAYOPEN=newDoorStayOpenthisstate=CLOSED:// voidDoorC1ick4 voidDoortimeout5 voidDoorcomplete6 classDoorState//定义一个抽象的状态它是所有状态类的基类 protectedDoor*door public DoorStateDoor*doorthis->door=door virtual~DoorStatevoid virtualvoidclick virtualvoidcomplete virtualvoidtimeout classDoorClosedPubliCDoorState//定义一个基本的Closed状态 public DoorClosedDoor*doorDoorStatedoor Virtual~DoorClosed voidclick voidDoorClosedclick7 intmain DooraDoor aDoor.getStateaDoor.clickaDoor.getStateaDoor.complete aDoor.getStateaDoor.timeoutaDoor.getStatereturn0 2处填
阅读下列说明和C++代码将应填入n处的字句写在对应栏内 [说明] 某游戏公司现欲开发一款面向儿童的模拟游戏该游戏主要模拟现实世界中各种鸭子的发声特征飞行特征和外观特征游戏需要模拟的鸭子种类及其特征如表18-4所示 为支持将来能够模拟更多种类鸭子的特征采用策略设计模式Strategy设计的类图如图18-7所示 其中Duck为抽象类描述了抽象的鸭子而类RubberDuckMallardDuckCottonDuck和RedHeadDuck分别描述具体的鸭子种类方法flyquack和display分别表示不同种类的鸭子都具有飞行特征发声特征和外观特征类FlyBehavior与QuackBehavior为抽象类分别用于表示抽象的飞行行为与发声行为类FlyNoWay与FlyWithWings分别描述不能飞行的行为和用翅膀飞行的行为类QuackSqueak与QuackNoWay分别描述发出“嘎嘎”声的行为发出橡皮与空气摩擦声的行为与不发声的行为请填补以下C++代码中的空缺 [C++代码] #include<iostream> usingnamespace1 classFlyBehavior public2fly=0 classQuackBehavior public3quack=0 classFlyWithWingspublicFlyBehavior publicvoidflycout<<"使用翅膀飞行!">>end1 classFlyNoWaypublicFlyBehavior publicvoidflycout"不能飞行!"end1 classQuackpublicQuackBehavior publicvoidquack"cout发出/’嘎嘎/’声!”end1 classSqueakpublicQuackBehavior publicvoidquackcout<<"发出空气与橡皮摩擦声!">>end1 classQuackNoWaypublicQuackBehavior publicvoidquackcout<<"不能发声!">>end1 classDuck protected FlyBehavior*4 QuackBehavior*5 public voidfly6 voidquack7 virtualvoiddisplay=0 classRubberDuckpublicDuck public RubberDuck flyBehavior=new8 quackBehavior=new9 RubberDuck if!flyBehaviordeleteflyBehavior if!quackBehaviordeletequackBehavior voiddisplay/*此处省略显示橡皮鸭的代码*/ //其他代码省略 2处填
阅读下列说明和Java代码将应填入n处的字句写在对应栏内 [说明] 某游戏公司现欲开发一款面向儿童的模游戏该游戏主要模拟现实世界中各种鸭子的发声特征飞行特征和外观特征游戏需要模拟的鸭子种类及其特征如表18-5所示 为支持将来能够模拟更多种类鸭子的特征采用策略设计模式Strategy设计的类图如图18-8所示 其中Duck为抽象类描述了抽象的鸭子而类RubberDuckMallardDuckCottonDuck和RedHeadDuck分别描述具体的鸭子种类方法flyquack和display分别表示不同种类的鸭子都具有飞行特征发声特征和外观特征接NFlyBehavior与QuackBehavior分别用于表示抽象的飞行行为与发声行为类FlyNoWay与FlyWithWings分别描述不能飞行的行为和用翅膀飞行的行为类QuackSqueak与QuackNoWay分别描述发出“嘎嘎”声的行为发出橡皮与空气摩擦声的行为与不发声的行为请填补以下Java代码中的空缺 [Java代码] 1FlyBehavior publicvoidfly 2QuackBehavior publicvoidquack classFlyWithWingsimplementsFlyBehaVior publicvoidflySystem.out.println"使用翅膀飞行!" classFlyNoWayimplementsFlyBehaVior publicvoidflySystem.out.println"不能飞行!" classQuackimplementsQuackBehavior publicvoidquackSystem.out.println"发出/’嘎嘎/’声!" classSqueakimplementsQuackBehavior publicvoidquackSystem.out.println"发出空气与橡皮摩擦声!" classQuackNoWayimplementsQuackBehaVior publicvoidquackSystem.out.println"不能发声!" abstractclassDuck protectedFlyBehavior3 protectedQuackBehavior4 publicvoidfly5 publicvoidquack6 public7voiddisplay classRubberDuckextendsDuck publicRubberDuck flyBehavior=Fiew8 quackBehavior=new9 publicvoiddisplay/*此处省略显示橡皮鸭的代码*/ //其他代码省略 5处填
阅读下列说明和Java代码将应填入n处的字句写在对应栏内 [说明] 某游戏公司现欲开发一款面向儿童的模游戏该游戏主要模拟现实世界中各种鸭子的发声特征飞行特征和外观特征游戏需要模拟的鸭子种类及其特征如表18-5所示 为支持将来能够模拟更多种类鸭子的特征采用策略设计模式Strategy设计的类图如图18-8所示 其中Duck为抽象类描述了抽象的鸭子而类RubberDuckMallardDuckCottonDuck和RedHeadDuck分别描述具体的鸭子种类方法flyquack和display分别表示不同种类的鸭子都具有飞行特征发声特征和外观特征接NFlyBehavior与QuackBehavior分别用于表示抽象的飞行行为与发声行为类FlyNoWay与FlyWithWings分别描述不能飞行的行为和用翅膀飞行的行为类QuackSqueak与QuackNoWay分别描述发出“嘎嘎”声的行为发出橡皮与空气摩擦声的行为与不发声的行为请填补以下Java代码中的空缺 [Java代码] 1FlyBehavior publicvoidfly 2QuackBehavior publicvoidquack classFlyWithWingsimplementsFlyBehaVior publicvoidflySystem.out.println"使用翅膀飞行!" classFlyNoWayimplementsFlyBehaVior publicvoidflySystem.out.println"不能飞行!" classQuackimplementsQuackBehavior publicvoidquackSystem.out.println"发出/’嘎嘎/’声!" classSqueakimplementsQuackBehavior publicvoidquackSystem.out.println"发出空气与橡皮摩擦声!" classQuackNoWayimplementsQuackBehaVior publicvoidquackSystem.out.println"不能发声!" abstractclassDuck protectedFlyBehavior3 protectedQuackBehavior4 publicvoidfly5 publicvoidquack6 public7voiddisplay classRubberDuckextendsDuck publicRubberDuck flyBehavior=Fiew8 quackBehavior=new9 publicvoiddisplay/*此处省略显示橡皮鸭的代码*/ //其他代码省略 7处填
阅读下列说明和C++代码将应填入n处的字句写在对应栏内 [说明] 已知某企业的采购审批是分级进行的即根据采购金额的不同由不同层次的主管人员来审批主任可以审批5万元以下不包括5万元的采购单副董事长可以审批5万元至10万元不包括10万元的采购单董事长可以审批10万元至50万元不包括50万元的采购单50万元及以上的采购单就需要开会讨论决定 采用责任链设计模式ChainofResponsibility对上述过程进行设计后得到的类图如图18-9所示 [C++代码] #include<string> #include<iostream> usingnamespacestd classPurchaseRequest public doubleAmount//采购的金额 intNumber//采购单编号 stringPurpose//采购目的 classApprover//审批者类 public Approversuccessor=NULL virtualvoidProcessRequestPurchaseRequestaRequest ifsuccessor!=NULLsuccessor->1 voidSetSuccessorApprover*aSucceSSsorsuccessor=aSuccesssor private 2successor classCongresspublicApprover public voidProcessRequestPurchaseRequeStaRequest ifaRequest.Amount>=500000/*决定是否审批的代码省略*/ else3ProceSsRequestaRequest classDirectorpublicApprover publlc voidProcessRequestPurchaseRequestaRequest/*此处代码省略*/ classPresidentpublicApprover public voidProcessRequestPurchaseRequestaRequest/*此处代码省略*/ classVicePresidentpublicApprover public voidProcessRequestPurchaseRequestaRequest/*此处代码省略*/ voidmsin CongressMeetingVicePresidentSamDirectorLarryPresidentTammy //构造责任链 Meeting.SetSuccessorNULLSam.SetSuccessor4 Tammy.SetSuccessor5Larry.SetSuccessot6 PurchaseRequestaRequest//构造采购审批请求 cin>>aRequest.Amount//输入采购请求的金额 7.ProcessRequestaRequest//开始审批 return 2处填
阅读下列说明和C++代码将应填入n处的字句写在对应栏内 [说明] 已知某企业的采购审批是分级进行的即根据采购金额的不同由不同层次的主管人员来审批主任可以审批5万元以下不包括5万元的采购单副董事长可以审批5万元至10万元不包括10万元的采购单董事长可以审批10万元至50万元不包括50万元的采购单50万元及以上的采购单就需要开会讨论决定 采用责任链设计模式ChainofResponsibility对上述过程进行设计后得到的类图如图18-9所示 [C++代码] #include<string> #include<iostream> usingnamespacestd classPurchaseRequest public doubleAmount//采购的金额 intNumber//采购单编号 stringPurpose//采购目的 classApprover//审批者类 public Approversuccessor=NULL virtualvoidProcessRequestPurchaseRequestaRequest ifsuccessor!=NULLsuccessor->1 voidSetSuccessorApprover*aSucceSSsorsuccessor=aSuccesssor private 2successor classCongresspublicApprover public voidProcessRequestPurchaseRequeStaRequest ifaRequest.Amount>=500000/*决定是否审批的代码省略*/ else3ProceSsRequestaRequest classDirectorpublicApprover publlc voidProcessRequestPurchaseRequestaRequest/*此处代码省略*/ classPresidentpublicApprover public voidProcessRequestPurchaseRequestaRequest/*此处代码省略*/ classVicePresidentpublicApprover public voidProcessRequestPurchaseRequestaRequest/*此处代码省略*/ voidmsin CongressMeetingVicePresidentSamDirectorLarryPresidentTammy //构造责任链 Meeting.SetSuccessorNULLSam.SetSuccessor4 Tammy.SetSuccessor5Larry.SetSuccessot6 PurchaseRequestaRequest//构造采购审批请求 cin>>aRequest.Amount//输入采购请求的金额 7.ProcessRequestaRequest//开始审批 return 4处填
阅读以下说明及Java程序将应填入n处的字句写在对应栏内 [说明] 传输门是传输系统中的重要装置传输门具有Open打开Closed已关闭Opening正在打开StayOpen保持打开Closing正在关闭5种状态触发状态的转换事件有crickcomplete和timeout三种事件与其相应的状态转换如图18-6所示 下面的“Java代码1”与“Java代码2”分别用两种不同的设计思路对传输门进行状态模拟请填补代码中的空缺 [Java代码1] pubZicclassDoor publicstaticfinalintCLOSED=1publicstaticfinalintOPENING=2 publicstaticfinalintOPEN=3publicstaticfinalintCLOSING=4 publicstaticfinalintSTAYOPEN=5privateintstare=CLOSED //定义状态变量用不同的整数表示不同状态 privatevoidsetStateintstatethis.stale=stare //设置传输门当前状态 publicvoidgetState //此处代码省略本方法输出状态字符串 //例如当前状态为CLOSED时输出字符串为"CLOSED" publicvoidclick//发生click事件时进行状态转换 if1setStateOPENING elseif2setStareCLOSZNG elseif3setStareSTAYOPEN //发生timeout事件时进行状态转换 publicvoidtimeoutifstate==OPENsetStateCLOSING pubncvoidcomplete//发生complete事件时进行状态转换 ifstate==OPENINGsetStateOPEN elseifstate==CLOSINGsetStateCLOSED publicStaticvoidmainString[]args DooraDoor=newDoor aDoor.geLStaLeaDoor.clickaDoor.getStateaDoor.complete aDoor.getStateaDoor.clickaDoor.getStateaDoor.clik aDoor.getStatereturn [Java代码2] publicclassDoor publicfinalDoorStateCLOSED=newDoorClosedthis publicfinalDoorStateOPENING=newDooropeningthis publicfinalDoorStateOPEN=newDoorOpenthis publicfinalDoorStateCLOSING=newDoorClosingthis publicfinalDoorStateSTAYOPEN=newDoorStayopenthis privateDoorStatestate=CLOSED //设置传输门当前状态 publicvoidsetStateDoorStatestatethis.state=state publicvoidgetState//根据当前状态输出对应的状态字符串 System.out.printInstate.getClass.getName publicvoidclick4//发生click事件时进行状态转换 publicvoidtimeout5//发生timeout事件时进行状态转换 publicvoidcomplete6//发生complete事件时进行状态转换 publicstaticvoidmainString[]args DooraDoor=newDoor aDoor.getStateaDoor.ClickaDoor.getStateaDoor.complete aDoor.getstateaDoor.timeoutaDoor.getStatereturn publicabstractclassDoorState//定义所有状态类的基类 protectedDoordoor publicDoorStateDoordoorthis.door=door publicvoidclick publiccoidcomplete publicvoidtimeout classDoorClosedextendsDoorState//定义一个基本的Closed状态 publicDoorClosedDoordoorsuperdoor publicvoidclick7 //该类定义的其余代码省略 //其余代码省略 1处填
阅读以下说明和C++代码将应填入n处的字句写在对应栏内 [说明] 传输门是传输系统中的重要装置传输门具有Open打开Closed已关闭Opening正在打开StayOpen保持打开Closing正在关闭5种状态触发传输门状态转换的事件有crickcomplete和timeout三种事件与其相应的状态转换如图18-5所示 下面的“C++代码1”与“C++代码2”分别用两种不同的设计思路对传输门进行状态模拟请填补代码中的空缺 [C++代码1] constintCLOSED=1constintOPENING=2 constintOPEN=3constintCLOSZNG=4 constintSTAYOPEN=5//定义状态变量用不同整数表示不同状态 classDoor private intstate//传输门当前状态 voidsetStateintstatethis->state=state//设置当前状态 public DoorstateCLOSED voidgetstate//根据当前状态输出相应的字符串 switchstate caseOPENING://cout<<""OPENING""<<end1break caseCLOSED://cout<<"CLOSED"<<end1break caseOPENcout<<"OPEN"<<end1break caseCLOSZNG://cout<<"CLOSZNG"<<end1break caseSTAYOPENcout<<"STAYOPEN"<<end1break voidcliok//发生click事件时进行状态转换 if1setStsateOPENING elseif2setStateCLOSZNG elseif3aetStateSTAYOPEN voidtimeout//发生timeout事件时进行状态转换 ifstate==OPENsetStateCLOSZNG voidcomplete//发生complete事件时进行状态转换 ifstate==OPENINGsetStateOPEN elseifstate==CLOSZNGsetStateCLOSED intmain DooraDoor aDoor.getStateaDoor.clickaDoor.getStaLeaDoor.Complete aDoor.getStateaDoor.clickaDoor.getStateaDoor.click aDoor.getStatereturn0 [C++代码2] ClassDoor public Doorstate*CLOSED*OPENING*0PEN*CLOSZNG*STAYOPEN*state Door virtual~Door……//释放申请的内存此处代码省略 voidsetStateDoorstate*statethis->state=state voidgetState //此处代码省略本方法输出状态字符串 //例如当前状态为CLOSED时输出字符串为"CLOSED" voidC1ick voidtimeout voidcomplete DoorDoor CLOSED=newDoorClosedthisOPENING=newDooropeningthis OPEN=newDoorOpenthisCLOSING=newDoorClosingthis STAYOPEN=newDoorStayOpenthisstate=CLOSED:// voidDoorC1ick4 voidDoortimeout5 voidDoorcomplete6 classDoorState//定义一个抽象的状态它是所有状态类的基类 protectedDoor*door public DoorStateDoor*doorthis->door=door virtual~DoorStatevoid virtualvoidclick virtualvoidcomplete virtualvoidtimeout classDoorClosedPubliCDoorState//定义一个基本的Closed状态 public DoorClosedDoor*doorDoorStatedoor Virtual~DoorClosed voidclick voidDoorClosedclick7 intmain DooraDoor aDoor.getStateaDoor.clickaDoor.getStateaDoor.complete aDoor.getStateaDoor.timeoutaDoor.getStatereturn0 4处填
阅读下列说明和Java代码将应填入n处的字句写在对应栏内 [说明] 已知某企业的采购审批是分级进行的即根据采购金额的不同由不同层次的主管人员来审批主任可以审批5万元以下不包括5万元的采购单副董事长可以审批5万元至10万元不包括10万元的采购单董事长可以审批10万元至50万元不包括50万元的采购单50万元及以上的采购单就需要开会讨论决定 采用责任链设计模式ChainofResponsibility对上述过程进行设计后得到的类图如图18-10所示 [Java代码] classPurchaseRequest publicdoubleAmount//采购的金额 publicintNumber//采购单编号 publicStringPurpose//采购目的 classApprover//审批者类 publicApproversuccessor=null publicvoidProcessRequestPurchaseRequestaRequest ifsuccessor!=nullsuccessor.1 publicvoidSetSuccessorApproveraSuccesssorsuccessor=aSuccesssor private2successor ClassCongressextendsApprover publicvoidProcessRequestPurchaseRequestaRequest ifaRequest.Amount>=500000/*决定是否审批的代码省略*/ else3.ProcessRequestaRequest classDirectorextendsApprover publicvoidProcessRequestPurchaseRequestaRequest/*此处代码省略*/ classPresidentextendsApprover publicvoidProcessRequestpurchaseRequestaRequest/*此处代码省略*/ classVicePresidentextendsApprover publicvoidProcessRequestpurchaseRequestaRequest/*此处代码省略*/ publicclassrs publicstaticvoidmainString[]argsthrowsIOException CongressMeeting=newCongress VicePresidentSam=newVicePresident DirectorLarry=newDirector PresidentTammy=newPresident //构造责任链 Meeting.SetSuccessornullSam.SetSuccessor4 Tammy.SetSuccessor5Larry.SetSuccessor6 //构造采购审批请求 PurchaseRequestaRequest=newPurchaseRequest BufferedReaderbr=newBufferedReadernewInputStreamReaderSystem.in aRequest.Amount=Double.parseDoublebr.readLine 7.ProcessRequestaRequest//开始审批 return 3处填
阅读下列说明和Java代码将应填入n处的字句写在对应栏内 [说明] 已知某企业的采购审批是分级进行的即根据采购金额的不同由不同层次的主管人员来审批主任可以审批5万元以下不包括5万元的采购单副董事长可以审批5万元至10万元不包括10万元的采购单董事长可以审批10万元至50万元不包括50万元的采购单50万元及以上的采购单就需要开会讨论决定 采用责任链设计模式ChainofResponsibility对上述过程进行设计后得到的类图如图18-10所示 [Java代码] classPurchaseRequest publicdoubleAmount//采购的金额 publicintNumber//采购单编号 publicStringPurpose//采购目的 classApprover//审批者类 publicApproversuccessor=null publicvoidProcessRequestPurchaseRequestaRequest ifsuccessor!=nullsuccessor.1 publicvoidSetSuccessorApproveraSuccesssorsuccessor=aSuccesssor private2successor ClassCongressextendsApprover publicvoidProcessRequestPurchaseRequestaRequest ifaRequest.Amount>=500000/*决定是否审批的代码省略*/ else3.ProcessRequestaRequest classDirectorextendsApprover publicvoidProcessRequestPurchaseRequestaRequest/*此处代码省略*/ classPresidentextendsApprover publicvoidProcessRequestpurchaseRequestaRequest/*此处代码省略*/ classVicePresidentextendsApprover publicvoidProcessRequestpurchaseRequestaRequest/*此处代码省略*/ publicclassrs publicstaticvoidmainString[]argsthrowsIOException CongressMeeting=newCongress VicePresidentSam=newVicePresident DirectorLarry=newDirector PresidentTammy=newPresident //构造责任链 Meeting.SetSuccessornullSam.SetSuccessor4 Tammy.SetSuccessor5Larry.SetSuccessor6 //构造采购审批请求 PurchaseRequestaRequest=newPurchaseRequest BufferedReaderbr=newBufferedReadernewInputStreamReaderSystem.in aRequest.Amount=Double.parseDoublebr.readLine 7.ProcessRequestaRequest//开始审批 return 7处填
阅读下列说明和Java代码将应填入n处的字句写在对应栏内 [说明] 某游戏公司现欲开发一款面向儿童的模游戏该游戏主要模拟现实世界中各种鸭子的发声特征飞行特征和外观特征游戏需要模拟的鸭子种类及其特征如表18-5所示 为支持将来能够模拟更多种类鸭子的特征采用策略设计模式Strategy设计的类图如图18-8所示 其中Duck为抽象类描述了抽象的鸭子而类RubberDuckMallardDuckCottonDuck和RedHeadDuck分别描述具体的鸭子种类方法flyquack和display分别表示不同种类的鸭子都具有飞行特征发声特征和外观特征接NFlyBehavior与QuackBehavior分别用于表示抽象的飞行行为与发声行为类FlyNoWay与FlyWithWings分别描述不能飞行的行为和用翅膀飞行的行为类QuackSqueak与QuackNoWay分别描述发出“嘎嘎”声的行为发出橡皮与空气摩擦声的行为与不发声的行为请填补以下Java代码中的空缺 [Java代码] 1FlyBehavior publicvoidfly 2QuackBehavior publicvoidquack classFlyWithWingsimplementsFlyBehaVior publicvoidflySystem.out.println"使用翅膀飞行!" classFlyNoWayimplementsFlyBehaVior publicvoidflySystem.out.println"不能飞行!" classQuackimplementsQuackBehavior publicvoidquackSystem.out.println"发出/’嘎嘎/’声!" classSqueakimplementsQuackBehavior publicvoidquackSystem.out.println"发出空气与橡皮摩擦声!" classQuackNoWayimplementsQuackBehaVior publicvoidquackSystem.out.println"不能发声!" abstractclassDuck protectedFlyBehavior3 protectedQuackBehavior4 publicvoidfly5 publicvoidquack6 public7voiddisplay classRubberDuckextendsDuck publicRubberDuck flyBehavior=Fiew8 quackBehavior=new9 publicvoiddisplay/*此处省略显示橡皮鸭的代码*/ //其他代码省略 9处填
阅读下列说明和C++代码将应填入n处的字句写在对应栏内 [说明] 已知某企业欲开发一个家用电器遥控系统即用户使用一个遥控器即可控制某些家用电器的开与关遥控器如图18-11所示该遥控器共有4个按钮编号分别是0~3按钮0和2能够遥控打开电器1和电器2按钮1和3则能遥控关闭电器1和电器2由于遥控系统需要支持形式多样的电器因此该系统的设计要求具有较高的扩展性现假设需要控制客厅电视和卧室电灯对该遥控系统进行设计所得类图如图18-12所示 在图18-12中类RomoteController的方法onPressButtonintbutton表示当遥控器按键按下时调用的方法参数为按键的编号Command接口中的on和off方法分别用于控制电器的开与关Light中的mrnLightintdegree方法用于调整电灯灯光的强弱参数degree值为0时表示关灯值为100时表示开灯并且将灯光亮度调整到最大TV中的setChannelintchannel方法表示设置电视播放的频道参数channel值为0时表示关闭电视值为1时表示打开电视并将频道切换为第1频道 [C++代码] classLight//电灯类 public voidturnLightintdegree//调整灯光亮度0表示关灯100表示亮度最大 classTV//电视机类 public voidsetChannelintchannel//调整频道0表示关机1表示开机并切换到第1频道 classCommand//抽象命令类 public virtualvoidon=0 virtualvoidoff=0 classRemoteController//遥控器类 protected Command*commands[4]//遥控器有4个按钮按照编号分别对应4个Command对象 public voidonPressButtonintbutton//按钮被按下时执行命令对象中的命令 ifbutton%2==0commands[button]->on elsecommands[button]->off voidsetCommandintbuttonCommand*command 1=command//设置每个按钮对应的命令对象 classLightCommandpublicCommand//电灯命令类 protectedLight*light//指向要控制的电灯对象 public voidonlight->turnLight100 voidofflight->2 LightCommandLight*lightthis->light=light classTVCommandpublicCommand//电视机命令类 protectedTV*tv//指向要控制的电视机对象 public voidontv->3 voidofftv->setChannel0 TVCommandTV*tvthis->tv=tv voidmain LightlightTvtv//创建电灯和电视对象 LightCommandlightCommand&light TVCommandtvCommand&tv RemoteControilerremoteController remoteController.setCommand04//设置按钮0的命令对象 ……//此处省略设置按钮1按钮2和按钮3的命令对象代码 本题中应用命令模式能够有效让类5和类6类7之间的耦合性降至最小 4处填
阅读下列说明和C++代码将应填入n处的字句写在对应栏内 [说明] 已知某企业欲开发一个家用电器遥控系统即用户使用一个遥控器即可控制某些家用电器的开与关遥控器如图18-11所示该遥控器共有4个按钮编号分别是0~3按钮0和2能够遥控打开电器1和电器2按钮1和3则能遥控关闭电器1和电器2由于遥控系统需要支持形式多样的电器因此该系统的设计要求具有较高的扩展性现假设需要控制客厅电视和卧室电灯对该遥控系统进行设计所得类图如图18-12所示 在图18-12中类RomoteController的方法onPressButtonintbutton表示当遥控器按键按下时调用的方法参数为按键的编号Command接口中的on和off方法分别用于控制电器的开与关Light中的mrnLightintdegree方法用于调整电灯灯光的强弱参数degree值为0时表示关灯值为100时表示开灯并且将灯光亮度调整到最大TV中的setChannelintchannel方法表示设置电视播放的频道参数channel值为0时表示关闭电视值为1时表示打开电视并将频道切换为第1频道 [C++代码] classLight//电灯类 public voidturnLightintdegree//调整灯光亮度0表示关灯100表示亮度最大 classTV//电视机类 public voidsetChannelintchannel//调整频道0表示关机1表示开机并切换到第1频道 classCommand//抽象命令类 public virtualvoidon=0 virtualvoidoff=0 classRemoteController//遥控器类 protected Command*commands[4]//遥控器有4个按钮按照编号分别对应4个Command对象 public voidonPressButtonintbutton//按钮被按下时执行命令对象中的命令 ifbutton%2==0commands[button]->on elsecommands[button]->off voidsetCommandintbuttonCommand*command 1=command//设置每个按钮对应的命令对象 classLightCommandpublicCommand//电灯命令类 protectedLight*light//指向要控制的电灯对象 public voidonlight->turnLight100 voidofflight->2 LightCommandLight*lightthis->light=light classTVCommandpublicCommand//电视机命令类 protectedTV*tv//指向要控制的电视机对象 public voidontv->3 voidofftv->setChannel0 TVCommandTV*tvthis->tv=tv voidmain LightlightTvtv//创建电灯和电视对象 LightCommandlightCommand&light TVCommandtvCommand&tv RemoteControilerremoteController remoteController.setCommand04//设置按钮0的命令对象 ……//此处省略设置按钮1按钮2和按钮3的命令对象代码 本题中应用命令模式能够有效让类5和类6类7之间的耦合性降至最小 6处填
阅读下列说明图及Java程序将应填入n处的字句写在对应栏内 [说明] 某订单管理系统的部分UML类图如图18-4所示 在图18-4中Product表示产品ProductList表示所销售产品的列表Order表示产品订单OrderItem表示产品订单中的一个条目OrderList表示订单列表SalesSystem提供 订单管理系统的操作接口各个类的部分属性和方法说明如表18-3所示 可以使用类Java.util.ArrayList<E>来实现对象的聚集关系如图18-4中OrderList与Order之间的聚集关系 for-each循环提供了一种遍历对象集合的简单方法在for-each循环中可以指定需要遍历的对象集合以及用来接收集合中每个元素的变量其语法如下 for用来接收集合中元素的变量需要遍历的对象集合 如果要使用for-each循环遍历对象集合那么包含该对象集合的类必须实现接口Java.util.Iterable<T> Java程序1和Java程序2分别给出了类OrderList和方法statistic的Java代码 [Java程序1] importjava.util.* publicclassOrderList1 privateArrayList<Order>orders publicOrderLiSt this.orders=newArrayList<Order> publicvoidaddOrderOrderorder this.orders.addorder publicIterator<Order>iterator return2 publicintgetNumberoforders returnthis.orders.slze [Java程序2] importJava.util.* publicclassSalesSystem privateProductListcatalog privateOrderListsales privatestaticPrintWriterstdOut=newPrintWriterSystem.outtrue publicvoidstatistiC forProductproduct3 intnumber=0 forOrderorder4 for5order ifproduct.equalsitem.getProduct number+=item.getQuantity stdOut.printInproduct.getCode+"" +product.getDescription+"" +number+""+number*product.getPrice //其余的方法未列出 1处填
阅读下列说明图和C++代码将应填入n处的字句写在对应栏内 [说明] 某订单管理系统的部分UML类图如图18-3所示 在图18-3中Product表示产品ProductList表示产品目录Order表示产品订单OrderItem表示产品订单中的一个条目OrderList表示订单列表SalesSystem提供订单管理系统的操作接口 请完善类Order的成员函数getOrderedAmount和类SalesSystem的statistic方法各个类的属性及部分方法定义参见下面的C++代码 [C++代码] classProduct//产品类 private stringpid//产品识别码 stringdescription//产品描述 doubleprice//产品单价 public voidsetProductPricedoubleprice//设置产品单价 stringgetProductld//获取产品识别码 stringgetProductDescription//获取产品描述 doublegetProductPrice//获取产品单价 //其他成员省略 classProductList//产品列表类 private vector<Product>products public ProductList ProductgetProductByIndexinti//获得产品列表中的第i件产品 voidaddProductProductt//在产品列表中加入一件产品 Product*getProductBylDstringpid//获得识别码为pid的产品指针 unsignedintgetProductAmount//获得产品列表中的产品数量 classOrderItem//订单条目类 private Product*productPtr//指向被订购产品的指针 intquantity//订购数量 public OrderItemProduct*int Product*getProductptr//获取指向被订购产品的指针 intgetQuantity//获取被订购产品的数量 classOrder//订单类 private unsignedintorderid//订单识别号 vector<OrderItem>items//订单内容订单项 public Orderunsignedintorderid //获得识别码为tid的产品在当前订单中被订购的数量 intgetOrderedAmountstringtid voidadditemProduct*productPtrunsignedintn//在订单中增加一个项 //其他成员省略 classOrderList//订单列表类 prtvate vector<Order>orders public OrderList //Begin返回指向订单列表第一个元素的迭代器指针 virtualvector<Order>iteratorOrderListBegin //End0返回指向订单列表最后一个元素之后的迭代器指向一个不存在的元素 virtualvector<Order>iteratorOrderListEnd voidaddOrderOrdert//在订单列表中加入一份订单 //其他成员省略 classSalesSystem private ProductListcatalog//产品目录 OrderListsales//订单列表 Public SalesSystem voidstatistic//统计所有产品的订购情况 //其他成员省略 //在订单中查找识别码为tid的产品的订购数量若该产品没有被订购则返回0 intOrdergetOrderedAmountstringtid forintk=0k<items.sizek++ if1==tid return2 return0 //方法statistic依次统计产品目录中每个产品的订购总量 //并打印输出每个产品的识别码描述订购总量和订购金额 voidSalesSystemstatistic unsignedintktordered_qty=0 vector<Order>iteratoritProductp cout<<"产品识别码/t描述/t/t订购数量/t金额"<<end1 fork=0k<catalog.getProductAtnountk++//遍历产品列表 p=3//从产品列表中取得一件产品信息存入变量p ordered_qty=0 //通过迭代器变量it遍历订单列表中的每一份订单 forit=sales.Begin4it++ //根据产品识别码获得产品P在当前订单中被订购的数量 t=5p.getProductId ordered_qty+=t cout<<p.getProductId<<"/t/t"<<p.getProductDescription<<"/t/t" cout<<ordered_qty<<"/t/t"<<p.getProductPrice*ordered_qty<<end1 4处填
阅读下列说明和Java代码将应填入n处的字句写在对应栏内 [说明] 已知某企业的采购审批是分级进行的即根据采购金额的不同由不同层次的主管人员来审批主任可以审批5万元以下不包括5万元的采购单副董事长可以审批5万元至10万元不包括10万元的采购单董事长可以审批10万元至50万元不包括50万元的采购单50万元及以上的采购单就需要开会讨论决定 采用责任链设计模式ChainofResponsibility对上述过程进行设计后得到的类图如图18-10所示 [Java代码] classPurchaseRequest publicdoubleAmount//采购的金额 publicintNumber//采购单编号 publicStringPurpose//采购目的 classApprover//审批者类 publicApproversuccessor=null publicvoidProcessRequestPurchaseRequestaRequest ifsuccessor!=nullsuccessor.1 publicvoidSetSuccessorApproveraSuccesssorsuccessor=aSuccesssor private2successor ClassCongressextendsApprover publicvoidProcessRequestPurchaseRequestaRequest ifaRequest.Amount>=500000/*决定是否审批的代码省略*/ else3.ProcessRequestaRequest classDirectorextendsApprover publicvoidProcessRequestPurchaseRequestaRequest/*此处代码省略*/ classPresidentextendsApprover publicvoidProcessRequestpurchaseRequestaRequest/*此处代码省略*/ classVicePresidentextendsApprover publicvoidProcessRequestpurchaseRequestaRequest/*此处代码省略*/ publicclassrs publicstaticvoidmainString[]argsthrowsIOException CongressMeeting=newCongress VicePresidentSam=newVicePresident DirectorLarry=newDirector PresidentTammy=newPresident //构造责任链 Meeting.SetSuccessornullSam.SetSuccessor4 Tammy.SetSuccessor5Larry.SetSuccessor6 //构造采购审批请求 PurchaseRequestaRequest=newPurchaseRequest BufferedReaderbr=newBufferedReadernewInputStreamReaderSystem.in aRequest.Amount=Double.parseDoublebr.readLine 7.ProcessRequestaRequest//开始审批 return 1处填
阅读下列说明和C++代码将应填入n处的字句写在对应栏内 [说明] 已知某企业欲开发一个家用电器遥控系统即用户使用一个遥控器即可控制某些家用电器的开与关遥控器如图18-11所示该遥控器共有4个按钮编号分别是0~3按钮0和2能够遥控打开电器1和电器2按钮1和3则能遥控关闭电器1和电器2由于遥控系统需要支持形式多样的电器因此该系统的设计要求具有较高的扩展性现假设需要控制客厅电视和卧室电灯对该遥控系统进行设计所得类图如图18-12所示 在图18-12中类RomoteController的方法onPressButtonintbutton表示当遥控器按键按下时调用的方法参数为按键的编号Command接口中的on和off方法分别用于控制电器的开与关Light中的mrnLightintdegree方法用于调整电灯灯光的强弱参数degree值为0时表示关灯值为100时表示开灯并且将灯光亮度调整到最大TV中的setChannelintchannel方法表示设置电视播放的频道参数channel值为0时表示关闭电视值为1时表示打开电视并将频道切换为第1频道 [C++代码] classLight//电灯类 public voidturnLightintdegree//调整灯光亮度0表示关灯100表示亮度最大 classTV//电视机类 public voidsetChannelintchannel//调整频道0表示关机1表示开机并切换到第1频道 classCommand//抽象命令类 public virtualvoidon=0 virtualvoidoff=0 classRemoteController//遥控器类 protected Command*commands[4]//遥控器有4个按钮按照编号分别对应4个Command对象 public voidonPressButtonintbutton//按钮被按下时执行命令对象中的命令 ifbutton%2==0commands[button]->on elsecommands[button]->off voidsetCommandintbuttonCommand*command 1=command//设置每个按钮对应的命令对象 classLightCommandpublicCommand//电灯命令类 protectedLight*light//指向要控制的电灯对象 public voidonlight->turnLight100 voidofflight->2 LightCommandLight*lightthis->light=light classTVCommandpublicCommand//电视机命令类 protectedTV*tv//指向要控制的电视机对象 public voidontv->3 voidofftv->setChannel0 TVCommandTV*tvthis->tv=tv voidmain LightlightTvtv//创建电灯和电视对象 LightCommandlightCommand&light TVCommandtvCommand&tv RemoteControilerremoteController remoteController.setCommand04//设置按钮0的命令对象 ……//此处省略设置按钮1按钮2和按钮3的命令对象代码 本题中应用命令模式能够有效让类5和类6类7之间的耦合性降至最小 2处填
热门题库
更多
初级网络管理员
初级信息处理技术员
中级数据库系统工程师
中级多媒体应用设计师
高级系统分析师
高级网络规划设计师
高级系统架构师
中级信息系统监理师
初级通信工程师
中级通信工程师
通信新技术、新业务知识
无线通信专业技术
移动通信专业技术
有线传输专业技术
电话交换专业技术
电信网络专业技术