首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和Java代码,将应填入(n)处的字句写在答题纸对应栏内。 【说明】 对多个元素的聚合进行遍历访问时,需要依次推移元素,例如对数组通过递增下标的方式,数组下标功能抽象化、一般化的结果就称为迭代器(Iterator)。模式以下程序模拟将书籍(Bo
阅读以下说明和Java代码,将应填入(n)处的字句写在答题纸对应栏内。 【说明】 对多个元素的聚合进行遍历访问时,需要依次推移元素,例如对数组通过递增下标的方式,数组下标功能抽象化、一般化的结果就称为迭代器(Iterator)。模式以下程序模拟将书籍(Bo
admin
2014-10-11
30
问题
阅读以下说明和Java代码,将应填入(n)处的字句写在答题纸对应栏内。
【说明】
对多个元素的聚合进行遍历访问时,需要依次推移元素,例如对数组通过递增下标的方式,数组下标功能抽象化、一般化的结果就称为迭代器(Iterator)。模式以下程序模拟将书籍(Book)放到书架(Bookshelf)上并依次输出书名。这样就要涉及到遍历整个书架的过程。使用迭代器Iterator实现。图6—1显示了各个类间的关系。以下是JAVA语言实现,能够正确编译通过。
【图6—1】
【Java代码】
//Iterator.java文件
public interface 工terator{
publ ic abstractboolean hasNext();
public abstract object next();
}
//Aggregate.java文件
publ ic interface Aggregate {
publ ic abstract Iterator iterator();
}
//Book.java
public class Book {
//省略具体方法和属性
}
//Bookshel fIterator.java文件
publ ic class BookShelfIterator (1) Iterator f
private BookShelf bookShel f:
private int index:
publie BookShel fIterator(BookShelfbookShel f){
this.bookShel f=b00kShelf:
this.index=0:
}
public boolean hasNext(){//判断是否还有下一个元素
if(index
return true:
)else{
return false:
}
)
public object next()(//取得下一个元素
Book book=bookShelf.getBookAt(index);
index++:
return book:
}
)
//B00kShelf.java
Importjava.util.vector;
publ ic class BookShelf{
priVate Vector books:
public BookShelf(intinitialsize);
this.books=new Vector(initialsize);
}
publ ic Book getBookAt(int index){
return (Book)books.get(index);
}
public int getLength(){
return books.size();
}
publ ic Iterator iterator(){
return new BookShel fIterator( (2) );
}
}
//Main.java文件
public class Main{
public static void main(String[] args){
B00kSnelt bookShelf=new B00kShelf(4);
//将书籍上架,省略代码
Iterator it=bookshelf(3);
while(4){//遍历书架,输出书名
Book book=(Book)it.(5);
System.out.println(“+b00k.getName());
}
}
}
选项
答案
(1)implements (2)this (3)iterator() (4)it.hasNext() (5)next()
解析
Iterator是接口类,空(1)应该填implements。根据构造函数BookShelⅡterator(BoOkShelfb00kShelf)可得,空(2)应填this,即自身引用。空(3)是取得迭代器实例,BookShel蹼中方法iterator0是返回Iterator接口,故空(3)应填iterator0。while循环是遍历书架,输出书名,循环条件是“还有下一一记录(书)”,故空(4)应填it.hasNext0。注意指针写法。空(5)是取得书实例,BookShelf类中方法next()是返回Object类实例,取得下一本书,故空(5)应填next()。
转载请注明原文地址:https://kaotiyun.com/show/piDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
瀑布模型表达了一种系统的、顺序的软件开发方法。以下关于瀑布模型的叙述中,正确的是(17)。
广义的软件测试由“确认”、“验证”、“测试”三个方面组成,其中“确认”是______。A.想证实在一个给定的外部环境中软件的逻辑正确性,检查软件在最终的运行环境上是否达到预期的目标B.检测软件开发的每个阶段、每个步骤的结果是否正确无误,是否与软件开发各
软件可靠性管理把软件可靠性活动贯穿于软件开发的全过程,成为软件工程管理的一部分。确定软件的可靠性目标在()阶段。
下列操作系统中,_____保持网络系统的全部功能,并具有透明性、可靠性和高性能等特性。
一个程序的控制流图中有5个结点,8条边,在测试用例数最少的情况,确保程序中每个可执行语句至少执行一次所需要的测试用例数的上限是_______。
由于操作系统升级而对软件进行修改的行为属于________维护。
给出关系R(A,B,C)和S(A,B,C),R和S的函数依赖集F={A→B,B→C}。若R和S进行自然连接运算,则结果集有3个属性。关系R和S________。
_______是构成我国保护计算机软件著作权的两个基本法律文件。
通常VLAN有静态和动态2种实现方式,这2种方式分别是如何实现的?各有什么特点?Switch1采用的是哪种实现方式?填充VLAN信息表如表9-3所示,将答案填写在答题纸相应位置。
目前,通过移动电话接人互联网采用的主要技术是什么?进行一次查询的数据信息如表9-1所示,网络的基本通信服务费用如表9-2所示,总费用=网络租用费+通信费。根据表中给出的数据,试计算销售员每月至少应进行多少次查询,才能使得使用移动电话的总费用比使用PDA
随机试题
蹒跚步态
斑疹伤寒病原治疗首选哪种药
血压高于多少时应先治疗后拔牙
下列各电对的电极电势与H+浓度有关的是()。
个人质押贷款的质物不包括()
关于我国风物特产,下列说法不正确的有()。
在目前义务教育投入体制下,县级财政勉强能负担起教师工资,中央和省财政能补贴部分教师工资和学校建设资金,但留下的缺口全部都交给学校自己解决。一些农村中小学校长反映,义务教育现在已经成了“学校的义务”。义务教育现在已经成了“学校的义务”的含义是()
某资本家投资100万元,资本有机构成4∶1,m’=100%,一年周转4次,其年剩余价值量和剩余价值率分别是
ThegiantMirafioriplantinTurinistheheartofFiatAuto,thetroubledcardivisionoftheFiatgroup.Astheearlyshifttr
PartⅡReadingComprehension(SkimmingandScanning)Directions:Inthispart,youwillhave15minutestogooverthepassageq
最新回复
(
0
)