首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 【说明】 现欲构造一文件/目录树,采用组合(Composite)设计模式来设计,得到的类图如6—8所示: 【Java代码】 import JavA.util.ArrayLi
阅读下列说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 【说明】 现欲构造一文件/目录树,采用组合(Composite)设计模式来设计,得到的类图如6—8所示: 【Java代码】 import JavA.util.ArrayLi
admin
2013-01-05
74
问题
阅读下列说明和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
软件设计师下午应用技术考试
软考中级
相关试题推荐
与设计测试用例无关的文档是______。A.项目开发计划B.需求规格说明书C.设计说明书D.源程序
函数t()、f()的定义如下所示。若调用函数t()时传递给x的值为3,并且调用函数f()时,第一个参数采用传值(call by value)方式,第二个参数采用传引用(call by reference)方式,则函数t0的返回值为(33).
软件评审作为质量控制的一个重要手段,已经被业界广泛使用。评审分为内部评审和外部评审。关于内部评审的叙述,正确的包括______。①对软件的每个开发阶段都要进行内部评审②评审人员由软件开发组、质量管理和配置管理人员组成,也可邀请用户参与
以下属于静态测试方法的是___________。
(35)测试用例设计方法既可以用于黑盒测试,也可以用于白盒测试。
缺陷探测率DDP是衡量一个公司测试工作效率的软件质量成本的指标。在某公司开发一个软件产品的过程中,开发人员自行发现并修正的缺陷数量为80个,测试人员A发现的缺陷数量为50个,测试人员B发现的缺陷数为50个,测试人员A和测试人员B发现的缺陷不重复,客户反馈缺
结构化分析(StructuredAnalysis,SA)是面向数据流的需求分析方法,______不属于SA工具。A.分层的数据流图B.数据词典C.问题分析图D.描述加工逻辑的结构化语言、判定表或判定树
下图是________________设计模式的类图,该设计模式的目的是________________,图中,Decorator和Component之间是________________关系,ConcreteDecorator和Decorator之间是_
以下______不属于单元测试中模块接口测试的测试内容。
阅读下列说明和C程序,将应填入(n)处的字句写在对应栏中。[说明]借助一个栈结构,可实现二叉树的非递归遍历算法。InOrderTraverse数实现中序非递归遍历,遍历过程如下:若不是空树,根节点入栈,进入左子树;若已
随机试题
一位肝硬化病人,由于消化道出血而导致出血性休克,下列哪项抢救措施是不正确的
钉洞固位型一般不设在
具有促进血液运行和津液输布作用的是()
A.盐酸普鲁卡因胺B.奎尼丁C.盐酸利多卡因D.普罗帕酮E.胺碘酮结构与β受体拮抗剂相似,但β受体拮抗作用较弱,临床用于心律失常的药物是
案情:深圳市汇丰信用社系自主经营、独立核算的股份制城市集体金融企业,其理事会是经营决策权力机构,实行理事会领导下的主任负责制,主任是信用社的法定代表人,由理事会聘任并报深圳银监局审查任职资格合格。2005年11月15日,该信用社主任纪某因受贿罪被逮捕,由副
甲在国外旅游,见有人兜售高仿真人民币,用1万元换取10万元假币,将假币夹在书中寄回国内(事实一)。赵氏调味品公司欲设加盟店,销售具有注册商标的赵氏调味品,派员工赵某物色合作者。甲知道自己不符加盟条件,仍找到赵某送其3万元真币和10万元假币,请其帮忙加盟事
在当代资本主义生产关系中,阶层、阶级结构发生了新的变化,包括
关于ARP协议,描述正确的是______。A.源主机广播一个包含MAC地址的报文,对应主机回送IP地址B.源主机广播一个包含IP地址的报文,对应主机回送MAC地址C.源主机发送一个包含MAC地址的报文,ARP服务器回送IP地址D.源主机发送一个包含
下面的关于对计算机图形和图像的叙述中,正确的是( )。
Insteadofbeingsenttoprison,theshoplifterwas______withafine.
最新回复
(
0
)