首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 【说明】 现欲构造一文件/目录树,采用组合(Composite)设计模式来设计,得到的类图如6—8所示: 【Java代码】 import JavA.util.ArrayLi
阅读下列说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 【说明】 现欲构造一文件/目录树,采用组合(Composite)设计模式来设计,得到的类图如6—8所示: 【Java代码】 import JavA.util.ArrayLi
admin
2013-01-05
71
问题
阅读下列说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。
【说明】
现欲构造一文件/目录树,采用组合(Composite)设计模式来设计,得到的类图如6—8所示:
【Java代码】
import JavA.util.ArrayList;
import JavA.util.List;(1)class AbstractFile{
protected String name;
public void printName(){System.out.println(name);}
public abstract boolean addChild(AbstractFile file);
public abstract boolean removeChild(AbstractFile file);
public abstract List
getChildren {};
}
class File extends AbstractFile{
public File(String name)(this.name=name;}
public boolean addChild(AbstractFile file){return false;}
public boolean removeChild(AbstractFile file){return false;}
public List
getChildren(){return (2) ;)
}
clasS Folder extends AbstractFile{
private List
childList;
public Folder(String name){
thiS.name=name;
this.childList=new ArrayList
{};
}
public boolean addChild(AbstractFile file){return childList.add(file);}
public boolean removeChild(AbstractFile file){return childList.remove(file);
public (3)
getChildren(){return (4) ;)
}
public class Client{
public static void main(String[]args){
//构造一个树形的文件/目录结构
AbstractFile rootFolder=new Folder(“C:\”’);
AbstractFile compositeFolder=new Folder(”composite”);
AbstractFile windowsFolder=new Folder(”windows”);
AbstractFile file=new File(”TestComposite.java”);
rootFOlder.addChild (compositeFolder);
rootFolder.addChiid(windowsFolder);
compositeFolder.addChild(file);
//打印目录文件树
printTree(rootFolder);
}
private static void printTree(AbstractFile ifile){
ifile.PrIntName();
List
children:ifile.getChildren ();
if(chiidren==null)return;
for(AbstractFile file:children){(5) ;
}
}
}
该程序运行后输出结果为:
C:\
composite
TestComposite.java
Windows
选项
答案
(1)Abstract(2)null(3)List(4)childList(5)printTree(file)
解析
Composite模式定义:将对象以树型结构组织起来,以达成“部分-整体”的层次结构,使得客户端对单个对象和组合对象的使用具有一致性。Composite比较容易理解,想到Composite就应该想到树型结构图。组合体内这些对象都有共同接口,当组合体一个对象的方法被调用执行时,Composite将遍历(Iterator)整个树形结构,寻找同样包含这个方法的对象并实现调用执行。AbstractFile为一个抽象文件类,其作用主要是实现对文件或者文件夹的抽象。文件类File继承自AbstractFile。File(stringname)为File类的一个属性,用于获取文件名称。Add-child方法用来给一个目录增加子目录或文件。Removechild方法用于删除一个目录的子目录或文件。Getchildren方法用于获取一个目录或文件,所以返回值类型应该是一个列表形式的AbstractFile,但文件本身不包括子目录,故返回NUIJIJ。Fold类表示一个文件夹,属性Folder用于获取文件夹名称,Getchildren方法返回值应为List型的AbstractFile对象指针。
转载请注明原文地址:https://kaotiyun.com/show/ieDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
结构化分析的输出不包括________________。
缺陷探测率DDP是衡量一个公司测试工作效率的软件质量成本的指标。在某公司开发一个软件产品的过程中,开发人员自行发现并修正的缺陷数量为80个,测试人员A发现的缺陷数量为50个,测试人员B发现的缺陷数为50个,测试人员A和测试人员B发现的缺陷不重复,客户反馈缺
用边界值分析法,假定X为整数,10≤X≤100,那么X在测试中应该取(40)边界值。
在引入自动化测试工具以前,手工测试遇到的问题包括()。①工作量和时间耗费过于庞大②衡量软件测试工作进展困难③长时间运行的可靠性测试问题④对并发用户进行模拟的问题⑤确定系统的性能瓶颈问题⑥软件测试过程的管
防火墙对数据包进行过滤时,不能过滤的是(9)________________。
网络杀毒软件厂商已经开始使用数据库技术和LDAP技术进行策略日志存储和用户管理,这里LDAP指的是______。A.轻量目录访问协议B.本地目录访问协议C.轻量数据访问协议D.本地数据访问协议
以下关于边界值分析法的叙述中,不正确的是
函数main()、f()的定义如下所示。调用函数f()时,第一个参数采用传值(callbyvalue)方式,第二个参数采用传引用(callbyreference)方式,main()执行后输出的值为_______。
阅读下面的说明,回答问题1至问题5。[说明]利用VLAN技术可以把物理上连接的网络从逻辑上划分为多个虚拟子网,可以对各个子网实施不同的管理策略。下图表示两个交换机相连,把6台计算机配置成两个VLAN。
随机试题
甲公司与乙公司签订合同,出售10吨桃子,约定甲公司将货物运至乙公司。甲公司与丙公司签订合同,由丙公司将桃子装车运到乙公司。丙公司派其员工丁开车送货,在运输途中遭遇泥石流,丁的汽车被巨石打下公路,桃子全被压烂。桃子的损失由()。
一般进出口货物报关程序。
个人征信查询管理的内容不包括()。
施工图预算的编制方法有()。
分析歌曲《月之故乡》谱例。写出:调式调性;
某突击队150名工人准备选一名代表上台领奖。选举的方法是:让150名工人排成一排,由第一名开始报数,报奇数的人落选退出队列,报偶数的人站在原位置不动,然后再从头报数,如此继续下去,最后剩下的一名当选。小李非常想去,他在第一次排队时应该站在队列的什么位置上才
抗战时期中国共产党的教育政策是:国民教育第一,干部教育第二。
修改宪法的权力只能由()行使。
南京国民政府的成文法主要由六部法律及其相关单行法律构成,人们习惯将这一法律称为六法体系,下列关于六法体系的表述,正确的是()(2016年一综一第63题)
Pursuingacareerisanessentialpartofadolescentdevelopment."Theadolescentbecomesanadultwhenhe【C1】______arealjob.
最新回复
(
0
)