2021年08月20日来源:信管网 作者:cnitpm
软件设计师下午考试科目为案例分析,考试题型为主观题,4道必答题,2道(5、6题)选答题,考试时长2个半小时,共75分。为帮助广大软考中级软件设计师考生更好备考,信管网特整理汇总了软件设计师部分真题、答案及解析供考生查阅,并提供免费在线模拟答题、历年真题免费下载等服务,了解软件设计师更多备考信息请关注信管网。
相关推荐:
免费练习:软件设计师考试题库(模拟试题、章节练习、每日一练)
阅读以下说明和java代码,将应填入 (n) 处。
[说明]
在一公文处理系统中,开发者定义了一个公文类officedoc,其中定义了公文具有的属性和处理公文的相应方法。当公文的内容或状态发生变化时,关注此officedoc类对象的相应的docexplorer对象都要更新其自身的状态。一个officedoc对象能够关联一组 docexplorer对象。当officedoc对象的内容或状态发生变化时,所有与之相关联的 docexplorer对象都将得到通知,这种应用被称为观察者模式。以下代码采用java语言实现,能够正确编译通过。
[java代码]
//subject.java 文件
public interface subject {
public void attach(observer docexplorer);
public void detach(observer docexplorer);
void notifyobservers();
}
//observer.java 文件
public interface observer{
void update( (1) );
}
//officedoc.java 文件
import java.util.*;
public class officedoc implements subject(//officedoc 类实现 subject 接口
private vector observerveetor=new java.util.vector();
//存储与officedoc相关联的docexplorer 对象
public void attach(observer observer){
//将某 docexplorer 对象与officedoc 相关联
observervector.addelement(observer);
}
public void detach(observer observer){
//解除某docexplorer 对象与officedoc的关联关系
observervector.removeelement(observer);
}
public void notifyobservers(){
//当officedoc对象状态已发生变化时,通知所有的docexplorer对象
enumeration enumeration= (2) ;
while (enumeration.hasmoreelements()){
((observer)enumeration.nextelement()). (3) ;
}
}
public enumeration observers(){
return observervector.elements();
}
//其他公文类的属性和方法省略
}
//doeexplorer.java 文件
public class docexplorer implements (4) {
public void update( (5) ){
//更新docexplorer自身的状态,代码省略
}
}
信管网参考答案:
(1) Subject subject(注:第二个subject可用其他标识符替换)
(2) Observers()
(3) update(this)
(4) Observer
(5) Subject subject(注:第二个subject可用其他标识符替换)
查看解析:www.cnitpm.com/st/2453419400.html
温馨提示:因考试政策、内容不断变化与调整,信管网提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!
相关推荐