首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
己知某类库开发商提供了一套类库,类库中定义了Application类和Document类,它们之间的关系如图16—5所示。其中,Application类表示应用程序自身,而Document类则表示应用程序打开的文档。Application类负责打开一个已有
己知某类库开发商提供了一套类库,类库中定义了Application类和Document类,它们之间的关系如图16—5所示。其中,Application类表示应用程序自身,而Document类则表示应用程序打开的文档。Application类负责打开一个已有
admin
2017-08-31
98
问题
己知某类库开发商提供了一套类库,类库中定义了Application类和Document类,它们之间的关系如图16—5所示。其中,Application类表示应用程序自身,而Document类则表示应用程序打开的文档。Application类负责打开一个已有的以外部形式存储的文档,如一个文件,一旦从该文件中读出信息后,它就由一个Document对象表示了。
当开发一个具体的应用程序时,开发者需要分别创建自己的Application和Document子类。例如,图16-5中的类MyApplication和类MyDocument,并分别实现Application和Document类中的某些方法。
已知Application类中的openDocument方法采用了模板方法(Template Method)设计模式,该方法定义了打开文档的每一个主要步骤如下:
(1)首先检查文档是否能够被打开,若不能打开,则给出出错信息并返回。
(2)创建文档对象。
(3)通过文档对象打开文档。
(4)通过文档对象读取文档信息。
(5)将文档对象加入到Application的文档对象集合中。
[Java代码]
abstract class Document{
public void save()
{
/*存储文档数据,此处代码省略*/
}
public void open(String docName)
{
/*打开文档,此处代码省略*/
}
public void close()
{
/*关闭文档,此处代码省略*/
}
public abstract void read(String docName);
};
abstract class Appplication{
private Vector< (1)>docs;/*文档对象集合*/
publ ic boolean canOpenDocument( String docName )
{
/*判断是否可以打开指定文档,返回真值时表示可以打开,返回假值表示不可打开,此处代码省略*/
}
public void addDocument(Document aDocument)
{
/*将文档对象添加到文档对象集合中*/
docs.add((2));
}
public abstract Document doCreateDocument(); /*创建一个文档对象*/
public void openDocument(String docName){ /*打开文档*/
if((3)){
System.out.println(“文档无法打开!”);
return;
}
(4)adoc= (5);
(6);
(7);
(8);
}
};
选项
答案
(1)Document (2)aDocument (3)!canOpenDocument(doeName) (4)Document (5)doCreateDocument() (6)adoCopen(docName) (7)adoCread(docName)
解析
本题考查了Java语言的应用能力和模板方法设计模式。空(1)考查了Java库中Vector模板类的使用,由于Vector模板类可以存储任意类型,在定义时需要指定其存储类型,根据后面的代码,能够加入到该文档集合对象的类型为文档类型,因此空(1)处的类型应该为Document。空(2)处将文档对象加入文档集合对象中。从空(3)开始的代码属于图中Application类的OpenDocument方法,该方法是模板方法,因此,需根据题目给出的步骤一一对应填空。空(3)处判断能否打开文档,需要调用父类自己的方法canOpen—Document。空(4)与空(5)所在的语句需要创建文档对象,调用doCreateDocument方法,接着通过文档对象打开和读取文档,最后通过addDocument方法将该文档对象加入到文档对象集合中。所有这些方法都是在父类或文档对象中进行定义,不涉及到具体的子类。而子类负责要实现这些模板方法中需要调用的方法以便运行时被调用。
转载请注明原文地址:https://kaotiyun.com/show/aODZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
阅读以下说明,回答问题1、问题2、问题3、问题4和问题5,将解答填入对应栏内。[说明]Web服务器是在网络中为实现信息发布、资料查询、数据处理等诸多应用搭建基本平台的服务器。处理Web页面大致可分为3个步骤,原理如图8-2所示,域名是www
如果以前已经配置过这台服务器为VPN服务器,现在需要重新配置,该怎么操作?VPN按技术可分为哪三类?
阅读以下说明,回答问题1、问题2和问题3,将解答填入对应栏内。[说明]ADSL是运行在原有电话线上的一种高速宽带上网方式,具有节省投资、上网速度快与安装简单等优点。目前很多局域网、家庭上网,尤其是网吧都使用这种方式。接入方式如图6-1所示
阅读以下有关网络规划的叙述,回答问题1、问题2和问题3。网络工程是一项复杂的系统工程,一般可分为网络规划、网络设计、工程实施、系统测试验收和运行维护等几个阶段。网络规划是在需求分析的基础上,进行系统可行性分析和论证,以确定网络总体方案。网络规划阶段
在Internet上捕获并分析图8-16所示的网络中两个内部网络经由Internet通信的L2TPv2数据帧,请从以下4个选项中选择正确的答案填写到图8-17的(1)~(4)空缺处的相应位置。【供选择的答案】A.L2TPv2头
在Internet上捕获并分析图8-16所示的网络中两个内部网络经由Internet通信的L2TPv2数据帧,请从以下4个选项中选择正确的答案填写到图8-17的(1)~(4)空缺处的相应位置。【供选择的答案】A.L2TPv2头
阅读以下说明,回答问题1、问题2和问题3,将解答填入对应栏内。[说明]在因特网的发展过程中,WWW(WorldWideWeb)和域名服务系统(DNS)两项技术起了重大的推动作用,在域名服务系统(DNS)出现之前,所有的因特网主机名都存储
阅读以下交换机Switch01的部分配置信息,结合图2-8所示的网络拓扑图将(1)~(8)空缺处的内容(命令或解释)填写完整。Switch>enable(进入特权模式)S
双绞线可以制作成直连线和交叉线两种形式,在图3-12所示的拓扑结构中,交换机与路由器(Router)相连的双绞线应制作成什么形式?利用IEEE802.1QVLAN中继协议进行不同VLAN之间数据的路由时,需要在原有的以太网帧中加入4字节的IEEE
随机试题
王老师在上《程式与意蕴——中国传统绘画》一课时,合适的做法是()。
初步设计文件根据已批准的_______和_______进行编制。
()分层开采井下工艺是由各种封隔器、配产器、配水器等工具组成的。
胎儿新生儿溶血病
关于综合布线工程,说法正确的有()。
一般来说,高息货币的远期汇率表现为贴水,低息货币的远期汇率表现为升水。
Hereismyideaabouthowafriendislike.Firstly,【M1】______afriendissomeoneyoucanshareyoursecrets.Ifyou【M2】_____
设f(x,y,z)=exyz2,其中z=z(x,y)是由x+y+z+xyz=0确定的隐函数,则fx’(0,1,一1)=________.
Caffeinatedcoffeemayhaveanundeservedbadrap.Anewstudyshowsthedecaffeinatedvarietymayhaveharmfulhearteffects.T
Increasingly,overthepasttenyears,people—especiallyyoungpeople—havebecomeawareoftheneedtochangetheireatinghabit
最新回复
(
0
)