首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 【说明】 现欲构造一文件/目录树,采用组合(Composite)设计模式来设计,得到的类图如6—8所示: 【Java代码】 import JavA.util.ArrayLi
阅读下列说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 【说明】 现欲构造一文件/目录树,采用组合(Composite)设计模式来设计,得到的类图如6—8所示: 【Java代码】 import JavA.util.ArrayLi
admin
2013-01-05
60
问题
阅读下列说明和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
软件设计师下午应用技术考试
软考中级
相关试题推荐
下列协议中与Email应用无关的是()。
在软件项目管理中可以使用各种图形工具来辅助决策,下面对甘特(Gantt)图的描述中,不正确的是(15)。
结构化分析的输出不包括________________。
关于软件测试与质量保证,正确的理解是______。A.软件测试关注的是过程中的活动,软件质量保证关注的是过程的产物B.软件测试不是软件质量保证工作中的内容C.软件测试是软件质量保证的重要手段D.软件质量保证人员就是软件测试人员
黑盒测试法是根据产品的______来设计测试用例的。A.功能B.输入数据C.应用范围D.内部逻辑
若要求对大小为n的数组进行排序的时间复杂度为O(nlog2n),且是稳定的(即如果待排序的序列中两个数据元素具有相同的值,在排序前后它们的相对位置不变),则可选择的排序方法是______。
反映Web应用客户端交易处理性能的评估指标有(59)。 ①并发用户数 ②交易响应时间 ③交易通过率 ④吞吐量 ⑤点击率
下图是________________设计模式的类图,该设计模式的目的是________________,图中,Decorator和Component之间是________________关系,ConcreteDecorator和Decorator之间是_
对于逻辑表达式(bufc[i]>223&&bufc[i]<240&&i+2<totalbytes),需要______个测试用例才能完成条件组合覆盖。
阅读以下说明,回答问题1和问题2。说明二层隧道协议L2TP(Layer2TunnelingProtocol)是一种基于点对点协议PPP的二层隧道协议。某网络结构如图5-1所示,采用L2TP来实现网络安全。
随机试题
滚动轴承主要由内圈、________、________和滚动体四部分组成。
若估计量是未知参数θ的无偏估计,则一定有=_____.
某男性患者,27岁。因儿童期颏部外伤致颞下颌关节强直。若双侧颞下颌关节都已受累,病人无法耐受同期双侧手术,而需两次手术。两次手术之间的间隔不应超过
下列属于化学性损伤的是
()管理是指各级政府主管部门对项目管理权限的划分。
具有________认知风格的人在信息加工中对内在参照有较大的依赖倾向,在加工信息时主要依据,内在标准。(日照)
撰写交流信息的通知,要求做到()
所谓动态稳定中的“动态”,天然就包含了异见,包含了反对。只有能够包容异见和反对的稳定,才是真正的动态稳定,也才是可持续的和健康的稳定。邓小平一直主张,要尊重和支持人民的宣泄权利。只要处置得当,就可化“危”为“机”。如果以上陈述为真,以下哪项陈述一定为真?
A、findlearningmoreinterestingB、becomemoreinvolvedinwhattheyarelearningC、canbeevaluatedwiththeirphotojournalsD
Pollutantsaresubstanceswhich,whenpresentathighenoughconcentrations,produceharmfuleffectsonpeopleand/ortheenviro
最新回复
(
0
)