首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和Java代码,将应填入(n)处的字句写在对应栏内。 【说明】 已知某企业的采购审批是分级进行的,即根据采购金额的不同由不同层次的主管人员来审批,主任可以审批5万元以下(不包括5万元)的采购单,副董事长可以审批5万元至10万元(不包括
阅读下列说明和Java代码,将应填入(n)处的字句写在对应栏内。 【说明】 已知某企业的采购审批是分级进行的,即根据采购金额的不同由不同层次的主管人员来审批,主任可以审批5万元以下(不包括5万元)的采购单,副董事长可以审批5万元至10万元(不包括
admin
2008-11-02
25
问题
阅读下列说明和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://jikaoti.com/ti/kci7FFFM
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
请根据下面叙述的场景选用适当的设计模式。若某面向对象系统中的某些类有且只有一个实例,那么采用(30)设计模式能够有效达到该目的:该系统中的某子模块需要为其他模块捉供访问不同数据库系统(如 Oracle、SQL Server和DB2 UDB等)的功能,这些数
请根据下面叙述的场景选用适当的设计模式。若某面向对象系统中的某些类有且只有一个实例,那么采用(30)设计模式能够有效达到该目的:该系统中的某子模块需要为其他模块捉供访问不同数据库系统(如 Oracle、SQL Server和DB2 UDB等)的功能,这些数
在“模型一视图一控制器(NVC)”模式中,(27)主要表现用户界面,(28)用来描述核心业务逻辑。
某供应商数据库中的供应关系为SPJ(供应商号,零件号,工担号,数量),如下命令查询某工程至少用了3家供应商(包含3家)供应的零件的平均数量,并按工程号的降序排列。SELECT工程号,(14)FROMSPJGROUPBY工程号(15)
Web应用系统负载压力测试中,(60)不是衡量业务执行效率的指标。
黑盒测试中,(59)是根据输出对输入的依赖关系设计测试用例。
软件测评相关的标准一般可以分为国际标准、国家标准、行业标准以及企业标准。一般情况下,技术要求最高的是______。A.国际标准B.国家标准C.行业标准D.企业标准
在编译过程中,进行类型分析和检查是()阶段的一个主要工作。
根据ANSI/IEEE829标准,(62)属于《测试案例说明》中的内容。 ①输入说明 ②测试目的 ③环境要求 ④特殊要求
随机试题
扬州八怪之一的______早年画竹、中年画马,且绘画风格因生活境况的变迁与人生体验的变化而几度发生较大改变。
男孩,15岁,左大腿下端持续剧痛伴高热3天,寒战,头痛,食欲差。查体:体温39℃,左大腿下端稍肿,局部皮温高,深压痛,右膝活动时疼痛加重。化验检查:白细胞1.8×109/L,中性粒细胞75%。对确诊最有价值的辅助检查是
氟的防龋机制不包括
为明确诊断通常使用的检查方法是若治疗后第3天,发现病人症状无明显好转,且有加重趋势,此时应给予
县级以上地方人民政府财政部门管理本地区企业会计信息化工作,主要职责包括()。
下列损害公共利益的侵权行为中,可由著作权行政管理部门给予行政处罚的有()。
“群山之父”“五岳独尊”()以其雄伟壮丽的风光和蕴含丰富的文化,被誉为“中华之魂”,被列为世界自然和文化双遗产。
中国传统建筑中天花板上的一种装饰,名为“藻井”,含有五行以水克火,预防火灾之意。()
在我国,公安机关的基本职能是()
Predicatingthefutureisariskybusinessforascientist.Itissafetosay,thattheglobalAIDsepidemicwillgetmuchwors
最新回复
(
0
)