首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某大型商场内安装了多个简易的纸巾售卖机,自动售出2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态如图10.37所示。 采用状态(State)模式来
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某大型商场内安装了多个简易的纸巾售卖机,自动售出2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态如图10.37所示。 采用状态(State)模式来
admin
2018-07-25
49
问题
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某大型商场内安装了多个简易的纸巾售卖机,自动售出2元钱一包的纸巾,且每次仅售出一包纸巾。纸巾售卖机的状态如图10.37所示。
采用状态(State)模式来实现该纸巾售卖机,得到如图10.38所示的类图。其中类State为抽象类,定义了投币、退币、出纸巾等方法接口。类SoldState、SoldOutState、NoQuarterState和HasQuarterState分别对应图10.37中纸巾售卖机的4种状态:售出纸巾、纸巾售完、没有投币、有2元钱。
【Java代码】
Import java.util.*
interface State{
public void insertQuarter(); //投币
public void ejectQuarter(); //退币
public void turnCrank(); //按下“出纸巾”按钮
public void dispense(); //出纸巾
}
class TisSueMachime{
_____(1)soldOutState,noQuarterstate,hasQuarterState,soldState,state;
State=soldOutState;
int count=0; //纸巾数
public TissueMachine(int number){/*实现代码省略*/}
public State getHasQuarterState() {return hasQuarterState,}
public State getNOQuarterState() {return noQuarterState;}
public State getSoldState(){return soldState;}
public State getSoldOutState() {return SoldOutState;}
int getCount(return count;}
//其余代码省略
};
Class NoQuarterState implement State{
TiSsueMachime tiSsueMachime;
publiC void insertQuarter(){
tiSsueMachine.SetState(______(2));
}
//构造方法以及其余代码省略
}
Class HasQuarterState implement State {
TiSsueMachine tiSsueMachine;
public void ejectQuarter(){
tissueMachine.setState____(3);
}
//构造方法以及其余代码省略
}
Class SoldState implement State {
TissueMachine tissueMachine;
public Void dispense(){
if(tissueMachine.getCount()>0){
tissueMachine.setstate____(4);
}
else{
tissueMachine.setstate(____(5) );
}
}
}
选项
答案
(1)State (2)tissueMachine.getHasQuarterState()或new HasQuarterState()或tissueMachine.HasQuarterState() (3)tissueMachine.getNoQuarterState()或new NoQuarterState()或tissueMachine.NoQuarterState() (4)tissueMachine.getNoQuarterState()或new NoQuarterState()或tissueMachine.NoQuarterState() (5)tissueMachine.getSoldOutState()或new SoldOutState()或tissueMachine.SoldOutState()
解析
空(1):根据题意,本题使用的是状态模式,判断纸巾售卖机的状态,根据不同的状态执行不同的动作。State定义了纸巾售卖机所对应的一些状态,如售出纸巾、纸巾售完等。类SoldOutState、NoQuarterState、}tasQuarterState、SoldState均由类State派生而来。
空(2):public void insertQuarter()定义了一个“投币”的方法,即在“没有投币”状态下,用户投币的方法。tissureMachine.setState是改变纸巾售卖机的状态,此时,用户已投入2元钱,故将此时的状态改为“有2元钱”的状态,纸巾售卖机调用“有2元钱”状态的方法即可。
空(3):public void ejectQuarter()定义了一个“退币”的方法,即在“有2元钱”状态下,用户按下退币按钮,纸巾售卖机将此时的状态改为“没有投币”状态,故直接调用NoQuarterState()即可。
空(4):根据纸巾售卖机状态图可知,当售出纸巾并且纸巾数量仍大于0时,将返回“没有投币”状态。同空(3)的分析,此处应调用NoQuarterState()。
空(5):根据纸巾售卖机状态图可知,当售出纸巾并且纸巾数量等于0时,将返回“纸巾售完”状态。此处用了if…else…判断语句,当纸巾数量仍大于0时,返回“没有投币”状态,否则,纸巾数量一定等于0。空(5)处是else下的一条语句,故此处是判断count为0时纸巾售卖机的状态,显然应调用SoldOutState()。
转载请注明原文地址:https://kaotiyun.com/show/L7DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
某公司申请到的IP地址为193.136.99.0,如图7-4所示,为了便于管理,需建立4个子网(要求每个子网的掩码必须相同),请回答如下问题。
阅读以下交换机Switch01的部分配置信息,结合图2-8所示的网络拓扑图将(1)~(8)空缺处的内容(命令或解释)填写完整。Switch>enable(进入特权模式)S
阅读以下关于交换机VLAN配置的技术说明,根据要求回答问题1至问题3。【说明】某电子商务公司下设销售部、技术部、财务部等3个部门,为了便于管理,每个部门组成一个VLAN,每个VLAN的编号、所包含的服务器及主机名称见表2-3。该公司部分网络拓扑结
阅读以下说明,回答问题1、问题2、问题3和问题4,将解答填入对应栏内。[说明]现在,家居装修布线是一个大且细致的工程项目,除了要布设普通电源线、有线电视电缆和电话线、音响线、视频线等,越来越多的电脑爱好者家中的网络布线则是少不了的。如果不是
结合图7-18所示的网络拓扑结构图,将以下路由器R1配置信息中(1)~(9)空缺处的内容填写完整,实现路由器R1的正确配置。Router>en(进入特权模式)Router#
阅读以下关于RIP动态路由配置的技术说明,结合网络拓扑图回答问题1至问题3。[说明]某大学城局域网的网络拓扑结构如图7-18所示,图中路由器R1、R2,R3均运行基于距离矢量算法的RIP路由协议,并且图中给出了路由器R1、R2、R3各端口的IP地
阅读以下基于Linux操作系统部署DHCP服务的技术说明,根据要求回答问题1至问题3。【说明】某地市图书馆内部局域网划分为办公区、电子阅览室、无线阅览室等3个VLAN,并通过一台带防火墙模块的路由器与Internet网互连。为了便于整个局域网IP
为了便于用户下载相关资料,特安装一台FTP服务器,其服务器端软件是Serv-U,假如要增加一个名为CIU10009的用户,对应目录为D盘,且要求加密,在图6-4中怎么设置?假如要封闭某用户的账号,请问在图6-4中怎么设置?
在图8-12所示的拓扑结构中的代理服务器上依次单击“开始→程序→管理工具→路由与远程访问,并在系统弹出的界面中打开“IP路由选择”目录树,然后用鼠标右键单击“NAT/基本防火墙”,选择[新增接口]命令。接着若选择接口1的“本地连接”,最后进行如图8-13所
随机试题
Businessesthrowaroundtheterm"innovation"toshowthey’reonthecuttingedgeofeverythingfromtechnologyandmedicineto
PassageOneWhatdoes"popular"meaninthepassage?
A.视神经B.上颌神经C.动眼神经D.滑车神经E.迷走神经经颈静脉孔进出颅腔的神经是
胸大肌肌皮瓣的主要缺点是
李某,初孕妇,孕36周,四步触诊结果:于子宫底部触到圆而硬的胎儿部分,在耻骨联合上方触到较软而宽、不规则的胎儿部分,胎背位于母体腹部右前方。胎心音于脐上右侧听到。则胎方位为
A.维生素B6B.维生素B2C.维生素CD.维生素AE.维生素D牛奶经巴氏消毒后主要损失的营养素是
A.后溪B.听宫C.少泽D.神门E.养老善于治疗头项强痛、癫狂痫的腧穴是
基本上能掌握母语全部发音的年龄是()。
阅读以下文字,完成问题。人类胚胎干细胞是人类胚胎发育早期——囊胚中未分化的细胞。囊胚外表是一层扁平细胞,可发育成胚胎的支持组织如胎盘等;中心的腔称为囊胚腔,腔内侧有内细胞群。内细胞群在形成内、中、外三个胚层时开始分化,内胚层分化形成肝、肺和肠等,
结构化程序设计的核心和基础是( )。
最新回复
(
0
)