早教吧 育儿知识 作业答案 考试题库 百科 知识分享
早教吧考试题库频道 --> 计算机类考试 -->软考中级 -->

读下列说明和Java代码,将应填入(n)处的字句写在对应栏内。 【说明】 已知某类库开发商捉供了一套类

题目

读下列说明和Java代码,将应填入(n)处的字句写在对应栏内。

【说明】

已知某类库开发商捉供了一套类库,类库中定义了Application类和Document类,它们之间的关系如下图所示,其中,Application类表示应用程序自身,而Document类则表示应用程序打开的文档。Application类负责打开一个已有的以外部形式存储的文档,如一个文件,一旦从该文件中读出信息后,它就由一个Document对象表示。

当开发一个具体的应用程序时,开发者需要分别创建自己的Application和Document子类,例如上图中的类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; /*文档对象集合*/

public 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(docName) (4)Document (5)doCreateDocument() (6)adoc.open(docName) (7)adoc.read(docName) (8)addDocument(adoc)
(1)Document (2)aDocument (3)!canOpenDocument(docName) (4)Document (5)doCreateDocument() (6)adoc.open(docName) (7)adoc.read(docName) (8)addDocument(adoc) 解析:本题考查了Java语言的应用能力和模板方法设计模式。空(1)考查了Java库中Vector模板类的使用,由于Vector模板类可以存储任意类型,在定义时需要指定其存储类型,根据后面的代码,能够加入到该文档集合对象的类型为文档类型,因此空(1)处的类型应该为Document。空(2)处将文档对象加入文档集合对象中。从空(3)开始的代码属于图中Application类的OpenDocument方法,该方法是模板方法,因此,需根据题目给出的步骤一一对应填空。空(3)处判断能否打开文档,需要调用父类自己的方法canOpen- Document。其次需要创建文档对象,调用doCreateDocument方法,接着通过文档对象打开和读取文档,最后通过addDocument方法将该文档对象加入到文档对象集合中。所有这些方法都是在父类或文档对象中进行定义,不涉及到具体的子类。而子类负责要实现这些模板方法中需要调用的方法以便运行时被调用。
看了读下列说明和Java代码,将应...的网友还看了以下:

38岁的父亲给10岁的儿子庆贺生日,父亲高兴地对儿子说:“我考考你,多少年后,我的年龄是你年龄的5 数学 2020-05-13 …

帮忙翻译广东话啊!一下说的是什么?起身收到你既信息,saysorrytome...其实帮忙翻译广东 语文 2020-05-13 …

帮忙翻译19个句子吧1你介意接一下电话吗2你在服药之前最好读一下说明3直到他离开前往北京的时候,他 英语 2020-05-14 …

关于现收现付制与基金积累制养老保险制度的储蓄效应,以下说法正确的是( )。①基金制养老保险制 职业资格考试 2020-05-22 …

磷酸戊糖与磷酸核糖区别是不是磷酸戊糖包括磷酸核糖,书里一下说磷酸核糖一下又说磷酸戊糖,是不是书里意 其他 2020-06-03 …

帮忙英文互应一下这句话,中文的意思是:"我知道,你永远不会回来了".那么,英语来说这句话要怎么说啊 英语 2020-06-05 …

麻烦教教我,第一四分位,和第三四分位是什么来的,有什么用,最重要的是怎样求啊?嗯,最好举例说一下说 数学 2020-06-18 …

陈老师买了两种书,共105本,单价分别为8元、12元,买书前陈老师带了1500元,现剩418元.王 数学 2020-06-20 …

太极拳到底能不能打人老梁在《体育评书》中说:“杨氏太极拳尤其是杨澄甫的太极拳已经不能打人了”。请朋 其他 2020-06-21 …

谁能给我将这几句话的意思说明一下,说具体点!1.人生有如负重致远,不可急躁.2.视不自由为常事,则 其他 2020-06-25 …