阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某公司的组织结构图如图6-1所示,现采用组合(Composition)设计模式来设计,得到如图6-2所示的类图。 其中Company为抽象类,定义

admin2011-04-06  40

问题 阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。
    【说明】
    某公司的组织结构图如图6-1所示,现采用组合(Composition)设计模式来设计,得到如图6-2所示的类图。

    其中Company为抽象类,定义了在组织结构图上添加(Add)和删除(Delete)分公司/办事处或者部门的方法接口。类ConcreteCompany表示具体的分公司或者办事处,分公司或办事处下可以设置不同的部门。类HRDepartment和FinanceDepartment分别表示人力资源部和财务部。
    【Java代码】
    import Java.util.*j
    (1) Company{
      protected String 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 compl=new ConcreteCompany(“南京办事处”);
    compl.Add(new HRDepartment(“南京办事处人力资源部”));
    Compl.Add(new FinanceDepartment(“南京办事处财务部”);
    (8);    //其它代码省略
    }
}

选项

答案(1)Abstract class (2)this->name (3)Company (4)ConcreteCompany (5)children (6)children (7)root->Add(comp) (8)root->Add(compl)

解析 FinanceDepartment类和HRDepartment类以及ConcreteCompany类均继承类Company,实现了Company类的Add方法和Delete方法。同时,ConcreteCompany类与Company类是组合关系,多个ConcreteCompany类组合成Company类。
转载请注明原文地址:https://kaotiyun.com/show/BlDZ777K
0

相关试题推荐
最新回复(0)