首页
登录
从业资格
某公司的组织结构图如图6-1所示,现采用组合(Composition)设计模式来
某公司的组织结构图如图6-1所示,现采用组合(Composition)设计模式来
免费题库
2022-08-02
91
问题
某公司的组织结构图如图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日就各自开发的库存管理软件分别申请“宏达”和“鸿达
随机试题
[originaltext]W:Whatcanyouseeonthetable?M:Icanseesomeeggsandsome
Fossilremains(revealthat)thefartherbackintime(ananimal)lived,thesma
鼓励跨行政区域的市政公用基础设施共享,特许经营期限最长不得超过()年。A.1
防水砂浆属于刚性防水。()
A.1 B.2 C.3 D.4
下列费用中,属于生产准备费的是( )。 A、试运转所需的原料费 B、生产
2012年第三季度全国100个城市的公共就业服务机构市场中,用人单位通过公共就业
为确保一流品质,W公司不惜血本全面引进来自欧美的反渗透设备、注塑机、制盖机等一流
对于需要按月结计发生额的明细账,每月结账时,应在“本月合计”字样下面划通栏双红线
3岁小儿。身材矮小而匀称,下列哪项诊断不太可能A.生长激素缺乏 B.先天性甲状
最新回复
(
0
)