早教吧 育儿知识 作业答案 考试题库 百科 知识分享
早教吧考试题库频道 --> 计算机类考试 -->软考中级 -->

试题七(共 15 分) 阅读下列说明和 Java 代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 【说明

题目

试题七(共 15 分)

阅读下列说明和 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 SetSuccessor(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 ;

}

}

参考答案
正确答案:

看了试题七(共 15 分) 阅读下...的网友还看了以下: