以下意图哪个是用来描述ITERATOR(迭代器)?()

题目

以下意图哪个是用来描述ITERATOR(迭代器)?()

  • A、使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系
  • B、用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象
  • C、提供一种方法顺序访问一个聚合对象中各个元素,而又不需暴露该对象的内部表示
  • D、运用共享技术有效地支持大量细粒度的对象
参考答案和解析
正确答案:C
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

图7-6UML类图所描绘的设计模式中的(43)模式。

A.Iterator(迭代器)

B.Decorator(装饰器)

C.Interpreter(解释器)

D.Adapter(适配器)


正确答案:C
解析:图7-6 UML类图所描绘的设计模式中的Interpreter(解释器)模式。其设计意图是:给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。

第2题:

因使用大量的对象而造成很大的存储开销时,适合采用()模式进行对象共享,以减少对象数量从而达到较少的内存占用并提升性能。

A.组合(Composite)

B.享元(Flyweight)

C.迭代器(Iterator)

D.备忘(Memento)


正确答案:B

第3题:

以下哪个可以用来描述文件和目录对象()

A.File

B.Directory

C.FileDescriptor

D.FileNameFilter


参考答案:A

第4题:

以下属于行为对象模式的是()

  • A、模板(Template Method)模式
  • B、迭代器(Iterator)模式
  • C、命令(Command)模式
  • D、观察者(Observer)模式

正确答案:A,B,C,D

第5题:

异常处理机制可理解为哪一种行为模式()

  • A、观察者(Observer)模式
  • B、迭代器(Iterator)模式
  • C、职责链(Chain of Responsibility)模式
  • D、策略(Strategy)模式

正确答案:C

第6题:

阅读以下说明和Java代码,回答问题

[说明]

对多个元素的聚合进行遍历访问时,需要依次推移元素,例如对数组通过递增下标的方式,数组下标功能抽象化、一般化的结果就称为迭代器(Iterator)。模式以下程序模拟将书籍(Book)放到书架(BookShelf)上并依次输出书名。这样就要涉及到遍历整个书架的过程。使用迭代器Iterator实现。图6-1显示了各个类间的关系。以下是JAVA语言实现,能够正确编译通过。

[图6-1]

[Java代码]

//Iterator. java文件

public interface Iterator {

public abstract boolean hasNext();

public abstract Object next();

}

//Aggregate. java文件

public interface Aggregate {

public abstract Iterator iterator();

}

//Book. java

public class Book {

//省略具体方法和属性

}

//BookshelfIterator. java文件

public class Bookshelf工terator (1) Iterator{

private BookShelf bookShelf;

private int index;

public BookshelfIterator(BookShelf bookShelf) {

this. bookShelf = bookShelf;

this. index = 0;

}

public boolean hasNext(){//判断是否还有下一个元素

if(index < bookShelf. getLength()){

return true;

}else{

return false;

}

}

public Object next()f//取得下一个元素

Book book = bookShelf. getBookAt(index);

index++;

return book;

}

}

//BookShelf. java

import java. util. Vector;

public class BookShelf {

private Vector books;

public BookShelf(int initialsize){

this. books = new Vector(initialsize);

}

public Book getBookAt(int index){

return(Book)books.get(index);

}

public int getLength(){

return books.size();

}

public Iterator iterator(){

return new BookShelfIterator( (2) );

}

}

//Main. java文件

public class Main {

public static void main(String args){

BookShelf bookShelf = new BookShelf(4);

//将书籍上架,省略代码

Iterator it = bookShelf. (3) ;

while( (4) ){//遍历书架,输出书名

Book book = (Book)it. (5) ;

System.out.printin(" "+book.getName());

}

}

}


正确答案:(1)implements this iterator() it.hasNext() next()
(1)implements this iterator() it.hasNext() next() 解析:Iterator是接口类,空(1)应该填implements。
根据构造函数Bookshelflterator(BookshelfbookShelf)可得,空(2)应填this,即自身引用。
空(3)是取得迭代器实例,BookShelf类方法iterator()是返回Iterator接口,故空(3)应填iterator()。
while循环是遍历书架,输出书名,循环条件是“还有下一记录(书)”,故空(4)应填it.hasNext()。注意指针写法。
空(5)是取得书实例,BookShelf类中方法next()是返回Object类实例,取得下一本书,故空(5)应填next()。

第7题:

以下哪个列表是有效敏捷项目的计划实践?()

  • A、版本计划、迭代计划、估算
  • B、估算、探测、迭代计划书
  • C、迭代计划、持续集成、估算、
  • D、愿景、版本计划、性能优化

正确答案:A

第8题:

使用Iterator迭代集合元素时,可以调用集合对象的方法增删元素。( )

此题为判断题(对,错)。


参考答案:错误

第9题:

封装分布于多个类之间的行为的模式是()

  • A、观察者(Observer)模式
  • B、迭代器(Iterator)模式
  • C、访问者(Visitor)模式
  • D、策略(Strategy)模式

正确答案:C

第10题:

Java的异常处理机制可理解为哪一种行为模式()

  • A、观察者(Observer)模式
  • B、迭代器(Iterator)模式
  • C、职责链(Chain of Responsibility)模式
  • D、策略(Strategy)模式

正确答案:C

更多相关问题