首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和Java代码,将应填入(n)处的字句写在对应栏内。 【说明】 已知某企业的采购审批是分级进行的,即根据采购金额的不同由不同层次的主管人员来审批,主任可以审批5万元以下(不包括5万元)的采购单,副董事长可以审批5万元至10万元(不包括
阅读下列说明和Java代码,将应填入(n)处的字句写在对应栏内。 【说明】 已知某企业的采购审批是分级进行的,即根据采购金额的不同由不同层次的主管人员来审批,主任可以审批5万元以下(不包括5万元)的采购单,副董事长可以审批5万元至10万元(不包括
admin
2008-11-02
50
问题
阅读下列说明和Java代码,将应填入(n)处的字句写在对应栏内。
【说明】
已知某企业的采购审批是分级进行的,即根据采购金额的不同由不同层次的主管人员来审批,主任可以审批5万元以下(不包括5万元)的采购单,副董事长可以审批5万元至10万元(不包括10万元)的采购单,董事长可以审批10万元至50万元(不包括50万元)的采购单,50万元及以上的采购单就需要开会讨论决定。
采用责任链设计模式(Chain of Responsibility)对上述过程进行设计后得到的类图如图7-1所示。
【Java 代码】
class PurchaseRequest {
public double Amount; // 一个采购的金额
public int Number; // 采购单编号
public String Purpose; // 采购目的
};
class Approver { // 审批者类
public Approver() { successor = null; }
public void ProcessRequest(PurchaseRequest aRequest){
if (successor != null){ successor.(1); }
}
public void SetSuccesser(Approver aSuccesssor){ successor = aSuccesssor; }
private (2) successor;
};
class Congress extends Approver {
public void ProcessRequest(PurchaseRequest aRequest) {
if(aRequest,Amount >= 500000){ // 决定是否审批的代码省略}
else (3).ProcessRequest(aRequest);
}
};
class Director extends Approver {
public void ProcessRequest(PurchaseRequest aRequest){ // 此处代码省略 }
};
class President extends Approver {
public void ProcessRequest(PurchaseRequest aRequest) { // 此处代码省略 }
};
class VicePresident extends Approver {
public void ProcessRequest(PurchaseRequest aRequest) { // 此处代码省略 }
};
public class rs {
public static void main(String[] args) throws IOException {
Congress Meeting = new Congress();
VicePresident Sam = new VicePresident();
Director Larry = new Director();
President Tammy = new President();
// 构造责任链
Meeting. SetSuccessor(null); Sam. SetSuccessor((4));
Tammy. SetSuccessor((5)); Larry. SetSuccessor((6));
//构造一采购审批请求
PurchaseRequest aRequest = new PurchaseRequest();
BufferedReader br =
new BufferedReader(new InputStreamReader(System.in));
aRequest.Amount = Double.parseDouble(br.readLine());
(7).ProcessRequest(aRequest); // 开始审批
return ;
}
}
选项
答案
(1)ProeessRequest(aRequest) (2)Approver (3)super (4)Tammy (5)Meeting (6)Sam (7)Larry
解析
本题考查的是设计模式的应用,属于比较传统的题目。责任链设计模式属于常用的23种设计模式之一。其目的是为了将一个请求发送给一个对象集合,对象被组织成一条链,而负责处理该请求的对象将获取请求消息并处理,其余对象则仅仅负责将该请求消息按照责任链的顺序传递到下一个对象。因此责任人链模式的关键在于组织不同的对象成为一条链并传递消息。
代码中空(1)处位于条件判断汀(successor!=NULL)内,因此其含义是判断当前对象是否存在后继对象,如果存在,按照责任链设计模式,可以把请求消息进行传递,也就是调用后继对象的ProcessRequest方法。空(2)处要求填写successor的类型,因为责任链模式中的每一个对象都继承自同一个父类,在本题中,就是Approver类型。空(3)处位于Congress类中的ProcessRequest方法中,该方法表示处理外界的请求,else块的含义表明Congress对象不处理当审批金额大于50万元的请求,因此,Congress对象应该将该请求转发到下一个对象进行处理,可以直接调用父类的ProcessRequest方法。空 (4)、(5)、(6)主要用来将各种对象串接成一个链,根据题目的要求,对象在责任链中的顺序应该为Director Larry:VicePresident Sam;President Tammy;Congress Meeting,而审批的请求应该从Larry开始。
转载请注明原文地址:https://kaotiyun.com/show/I5DZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
下列测试工具中,使用(68)执行自动化负载压力测试,使用(69)执行代码静态结构分析,使用(70)执行网络测试。
某供应商数据库中的供应关系为SPJ(供应商号,零件号,工担号,数量),如下命令查询某工程至少用了3家供应商(包含3家)供应的零件的平均数量,并按工程号的降序排列。SELECT工程号,(14)FROMSPJGROUPBY工程号(15)
以下各项中,(51)属于需求说明书的评测内容。①系统定义的目标是否与用户的要求一致②设计的约束条件或限制条件是否符合实际③是否考虑过软件需求的其他方案④软件的行为与它必须处理的信息、必须完成的功能是否一致
在进行面向对象设计时,采用设计模式能够(29)。
为验证某音乐会订票系统是否能够承受大量用户同时访问,测试工程师一般采用(62)测试工具。
(51)不属于测试人员编写的文档。
对软件可靠性的理解,正确的是(45)。①软件可靠性是指在指定条件下使用时,软件产品维持规定的性能级别的能力②软件可靠性的种种局限是由于随着时间的推移,软件需求和使用方式发生了变化③软件可靠性包括成熟性、有效性、容错性、易恢复性
假设A、B为布尔变量,对于逻辑表达式(A&&B||C),需要______个测试用例才能完成判定覆盖(DC)。A.2B.3C.4D.5
白盒测试也称结构测试或逻辑驱动测试,典型的白盒测试方法包括静态测试和动态测试。其中,静态测试除了静态结构分析法、静态质量度量法外,还有______。A.代码检查法B.逻辑覆盖法C.基本路径测试法D.结构覆盖法
模块A的功能为:从数据库中读出产品信息,修改后存回数据库,然后将修改记录写到维护文件中。该模块内聚类型为(38)内聚。以下关于该类内聚的叙述中,正确的是(39)。(39)
随机试题
高血压时,血管壁玻璃样变性常见于()
担保物权包括()。
咨询工程师的责任心表现在( )。
下列项目中,资本保全的限制规定不能用来发放股利的有()。
下列税种中,征税对象与计税依据不一致的有()。
以荷花和鸡蛋花作为市花的城市是()。
根据我国青年、少年、儿童工作在体制上的划分,各地共青团组织中的少年儿童工作部门负责的工作对象的年龄段在( )岁。
下列哪一种做法不利于教育发挥促进儿童发展的主导作用?()
A、 B、 C、 D、 A
Everycountrywithamonetarysystemofitsownhastohavesomekindofmarketinwhichdealersinbills,notes,andotherform
最新回复
(
0
)