首页
登录
从业资格
某公司的组织结构图如图6-1所示,现采用组合(Composition)设计模式来
某公司的组织结构图如图6-1所示,现采用组合(Composition)设计模式来
免费题库
2022-08-02
41
问题
某公司的组织结构图如图6-1所示,现采用组合(Composition)设计模式来设计,得到如图6-2所示的类图。其中Company为抽象类,定义了在组织结构图上添加(Add)和删除(Delete)分公司/办事处或者部门的方法接口。类ConcreteCompany表示具体的分公司或者办事处,分公司或办事处下可以设置不同的部门。类HRDepartment和FinanceDepartment分别表示人力资源部和财务部。
图6-1组织结构图
图6-2类图【Java代码】import java.util.*;(1)Company{protectedString name;public Company(String name){(2)=name;}public abstract void Add(Company c);//增加子公司、办尊处或部门public abstract void Delete(Company c);//删除子公司、办事处或部门}class ConcreteCompany extends Company{private List<(3)>children=new ArrayList<(4)>( );//存储子公司、办事处或部门public ConcreteCompany(String name){super(name);}public void Add(Company c){(5).add(c);}public void Delete(Company c){(6).remove(c);}}class HRDepartment extends Company{public HRDepartment(String name){super(name);}//其他代码省略}class FinanceDepartment extends Company{public FinanceDepartment(String name){super(name);}//其他代码省略}public class Test{public static void main(String[]args){ConcreteCompany root=new ConcreteCompany("北京总公司");root.Add(new HRDepartment("总公司人力资源部"));root.Add(new FinanceDepartment("总公司财务部"));ConcreteCompany comp=new ConcreteCompany("上海分公司");comp.Add(new HRDepartment("上海分公司人力资源部"));comp.Add(new FinanceDepartment("上海分公司财务部"));(7);ConcreteCompany comp1=new ConcreteCompany("南京办事处");comp1.Add(new HRDepartment("南京办事处人力资源部"));comp1.Add(new Fina.nceDepartment("南京办事处财务部"));(8);//其他代码省略}}
选项
答案
解析
(1)abstract class(2分)
(2)this.name(1分)
(3)Company(2分)
(4)Company(2分)
(5)children(2分)
(6)children(2分)
(7)root.Add(comp)(2分)
(8)comp.Add(comp1)(2分)
本题考查了Java语言的应用能力和组合设计模式的应用。
第(1)空在类名Company前,很明显应该要加关键字abstract class,因为题目描述的Company类是一个抽象类。第(2)空在构造函数中的赋值语句中,应该为this.name,就是给该类的一个属性name赋值,这里应该用this.name来引用这个属性。第(3)空与第(4)空的答案应该都为Company,这样要注意在java中与C++中的区别。第(5)和第(6)空的答案应该一样,一个用来增加节点,一个用来删除节点,都是使用的children对象。根据题目提供的组织结构图,我们可以知道,创建了上海分公司接的后,应该将其添加至root(北京总公司)下,因此第7空答案为root.Add(comp),同样的道理,第(8)空的答案为comp.Add(comp1)。
转载请注明原文地址:https://tihaiku.com/congyezige/2410303.html
本试题收录于:
中级 软件设计师题库软件水平考试初中高级分类
中级 软件设计师
软件水平考试初中高级
相关试题推荐
系统规划的主要任务包括__()__。A.明确组织的信息需求,制定系统总体结构方
某公司员工赵忻是一名软件设计师,按公司规定编写软件文档需要上交公司存档。这些软件
甲、乙两公司软件设计师分别完成了相同的计算机程序发明。甲公司先于乙公司完成,乙公
王某是一名软件设计师,每当软件开发完成后,按公司规定编写的软件文档属于职务作品,
王某是某公司软件设计师,每当软件开发完成后均按公司规定编写软件文档,并提交公司存
以下关于信息系统项目管理的说法中,不正确的是()。A.项目管理需要专门的组织
以下关于项目的说法中,不正确的是()A.项目具有明确的目标 B.项目的组织结
某公司开发系统记录员工基本信息。假设每个员工只在一个部门工作:每个员工必须提供工
软件能力成熟度模型(CMM)是对软件组织进化阶段的描述,分为5个成熟度级别,其中
甲、乙两公司于2020年7月7日就各自开发的库存管理软件分别申请“宏达”和“鸿达
随机试题
Weappreciatethegoodqualityofyourproducts,butunfortunatelyyourpricesap
1.留守儿童的现象在农村非常普遍2.这种现象带来的弊端3.我诊断该如何时处理这些问题Left-
A.第2周期间实际完成任务量超过计划2% B.该设备焊接过程未按原计划开始
下列哪几项生物膜工艺为自然充氧?( )A.曝气生物滤池 B.高负荷生物滤池
A. B. C. D.不可导
共用题干 EnglishandEnglishCommunity1.Th
A.限制性通气不足 B.无效腔样通气 C.功能性分流 D.解剖分流增加
患者女,20岁。近半年来月经量过多,未予注意,近1周头晕、乏力,来院就诊,查体发
在水路运输方式中,大型和新型船舶的开发和使用、筑港技术和港口机械的高效化,体现了
动脉粥样硬化性心脏病患者的膳食原则不包括( )。A.提高植物性蛋白的摄入,少吃
最新回复
(
0
)