1、全国计算机等级考试二级 JAVA真题 2006年 4月及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.下列选项中不属于结构化程序设计方法的是(分数:2.00)A.自顶向下B.逐步求精C.模块化D.可复用2.两个或两个以上模块之间关联的紧密程度称为(分数:2.00)A.耦合度B.内聚度C.复杂度D.数据传输特性3.下列叙述中正确的是(分数:2.00)A.软件测试应该由程序开发者来完成B.程序经调试后一般不需要再测试C.软件维护只包括对程序代码的维护D.以上三种说法都不对4.按照“后进先出”原则组织数据的数据结构是(分数:2.00)A.队
2、列B.栈C.双向链表D.二叉树5.下列叙述中正确的是(分数:2.00)A.线性链表是线性表的链式存储结构B.栈与队列是非线性结构C.双向链表是非线性结构D.只有根结点的二叉树是线性结构6.对如下二叉树 (分数:2.00)A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA7.在深度为 7的满二叉树中,叶子结点的个数为(分数:2.00)A.32B.31C.64D.638.“商品”与“顾客”两个实体集之间的联系一般是(分数:2.00)A.一对一B.一对多C.多对一D.多对多9.在 E-R图中,用来表示实体的图形是(分数:2.00)A.矩形B.椭圆形C.菱形D.三角形10.数据库 DB、
3、数据库系统 DBS、数据库管理系统 DBMS之间的关系是(分数:2.00)A.DB包含 DBS和 DBMSB.DBMS包含 DB和 DBSC.DBS包含 DB和 DBMSD.没有任何关系11.Java语言中,负责并发管理的机制是(分数:2.00)A.垃圾回收B.虚拟机C.代码安全D.多线程12.下列描述中,错误的是(分数:2.00)A.Java要求编程者管理内存B.Java的安全性体现在多个层次上C.Applet要求在支持 Java的浏览器上运行D.Java有多线程机制13.Java为移动设备提供的平台是(分数:2.00)A.J2MEB.J2SEC.J2EED.JDK5.014.JDK中提供的
4、文档生成器是(分数:2.00)A.javexeB.javaexeC.javadoexeD.javaproexe15.在 Java语言中,不允许使用指针体现出的 Java特性是(分数:2.00)A.可移植B.解释执行C.健壮性D.安全性16.下列不属于 Swing中构件的是(分数:2.00)A.JPanelB.JTableC.MenuD.JFrame17.下列方法中,不属于 WindowListener接口的是(分数:2.00)A.windowOpened()B.window Closed()C.window Activated()D.mouseDragged()18.下列语句中,属于多分支语句
5、的是(分数:2.00)A.if语句B.switch语句C.do while语句D.for语句19.阅读下列代码 public class Test 2005 public static void main(String args) Strings=“Test“; switch(s) case “Java“:System.out.print(“Java“); break; case “Language“:System.out.print(“Language“); break; case “Test“:System.out.ptint(“Test“); break; 其运行结果是(分数:2.00)
6、A.JavaB.LanguageC.TestD.编译出错20.阅读下列代码 public class Test 2005 public static void main(String args) System.out.println(0xa5)&0xaA) ; 其运行结果是(分数:2.00)A.0xa5B.10C.0x50D.0xaa21.阅读下列代码 public class Test 2005 public static void main(String args) System.out.println(32)?4:5); 其运行结果是(分数:2.00)A.2B.3C.4D.522.阅读下
7、列代码 public class Test public static void main(String args) System.out.println(891); 其运行结果是(分数:2.00)A.44B.45C.88D.9023.在 Applet中显示文字、图形等信息时,应使用的方法是(分数:2.00)A.paint()B.init()C.start()D.destroy()24.线程生命周期中正确的状态是(分数:2.00)A.新建状态、运行状态和终止状态B.新建状态、运行状态、阻塞状态和终止状态C.新建状态、可运行状态、运行状态、阻塞状态和终止状态D.新建状态、可运行状态、运行状态、恢
8、复状态和终止状态25.Thread类中能运行线程体的方法是(分数:2.00)A.start()B.resume()C.init()D.run()26.下列关于 Applet的说法中,错误的是(分数:2.00)A.Applet自身不能运行,必须嵌入到其他应用程序(如浏览器)中运行B.可以在安全策略的控制下读写本地磁盘文件C.Java中不支持向 Applet传递参数D.Applet的主类要定义为 javappleApplet类的子类27.下列选项中,不是 APPLET标记的是(分数:2.00)A.PARAMB.BODYC.CODEBASED.ALT28.在 Java中,与数据库连接的技术是(分数:
9、2.00)A.ODBCB.YDBCC.数据库厂家驱动程序D.数据库厂家的连接协议29.下列命题中,错误的是(分数:2.00)A.Java编程时,要求应尽量多用公共变量B.Java编程时,要求应尽量少用公共变量C.Java编程时,要求应尽量不用公共变量D.Java编程时,要求应尽量使用私有变量30.若特快订单是一种订单,则特快订单类和订单类的关系是(分数:2.00)A.使用关系B.包含关系C.继承关系D.无关系31.若数组 a定义为 inta=new int34,则 a是(分数:2.00)A.一维数组B.二维数组C.三维数组D.四维数组32.Java语言使用的字符码集是(分数:2.00)A.AS
10、CIIB.BCDC.DCBD.Unicode33.在程序读入字符文件时,能够以该文件作为直接参数的类是(分数:2.00)A.FileReaderB.BufferedReaderC.FileInputStreamD.ObjectInputStream34.java.io包的 File类是(分数:2.00)A.字符流类B.字节流类C.对象流类D.非流类35.下列描述中,正确的是(分数:2.00)A.在 Serializable接口中定义了抽象方法B.在 Serializable接口中定义了常量C.在 Serializable接口中没有定义抽象方法,也没有定义常量D.在 Serializable接口
11、中定义了成员方法二、B填空题/B(总题数:15,分数:30.00)36.对长度为 10的线性表进行冒泡排序,最坏情况下需要比较的次数为U 【1】 /U。(分数:2.00)填空项 1:_37.在面向对象方法中,U 【2】 /U描述的是具有相似属性与操作的一组对象。(分数:2.00)填空项 1:_38.在关系模型中,把数据看成是二维表,每一个二维表称为一个U 【3】 /U。(分数:2.00)填空项 1:_39.程序测试分为静态分析和动态测试。其中U 【4】 /U是指不执行程序,而只是对程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误。(分数:2.00)填空项 1:_40.数据独立性分为逻辑
12、独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改,称为U 【5】 /U。(分数:2.00)填空项 1:_41.U【6】 /U是 Java程序中基本的结构单位。(分数:2.00)填空项 1:_42.Java语言中,移位运算符包括:、和U 【7】 /U。(分数:2.00)填空项 1:_43.构件不能独立地显示出来,必须将构件放在一定的U 【8】 /U中才能显示。(分数:2.00)填空项 1:_44.能将显示空间分成很多层的布局管理器是U 【9】 /U。(分数:2.00)填空项 1:_45.Applet是能够嵌入到U 【10】 /U格式的文件中,并
13、能够在浏览器中运行的 Java类。(分数:2.00)填空项 1:_46.使用 Swing编写 Applet,则该 Applet的主类应该定义为U 【11】 /U类的子类。(分数:2.00)填空项 1:_47.在 Java中,线程的模型就是一个 CPU、程序代码和U 【12】 /U的封装体。(分数:2.00)填空项 1:_48.键盘键入字符串并在计算机屏幕上显示,这时的数据源是U 【13】 /U。(分数:2.00)填空项 1:_49.任何一个 Java程序都默认引入了一个包,这个包的名字叫 java.U 【14】 /U。(分数:2.00)填空项 1:_50.Java语言中,有一个类是所有类或接口
14、的父类,这个类的名称是U 【15】 /U。(分数:2.00)填空项 1:_全国计算机等级考试二级 JAVA真题 2006年 4月答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.下列选项中不属于结构化程序设计方法的是(分数:2.00)A.自顶向下B.逐步求精C.模块化D.可复用 解析:解析 结构化程序设计方法的主要原则有 4点:自顶向下(先从最上层总目标开始设计,逐步使问题具体化)、逐步求精(对于复杂问题,设计一些子目标作为过渡,逐步细化)、模块化(将程序要解决的总目标分解为分目标,再进一步分解为具体的小目标,每个小目标作为一个模块)、限
15、制使用 GOTO语句。没有可复用原则,所以选项 D为答案。2.两个或两个以上模块之间关联的紧密程度称为(分数:2.00)A.耦合度 B.内聚度C.复杂度D.数据传输特性解析:解析 本题考核模块独立性的评价。评价模块独立性的主要标准有两个;一是模块之间的耦合,它表明两个模块之间互相独立的程度,也可以说是两个或两个以上模块之间关联的紧密程度(所以,本题的正确答案为选项 A) ;二是模块内部之间的关系是否紧密,称为内聚。一般来说,要求模块之间的耦合尽可能地弱,即模块尽可能独立,而要求模块的内聚程度尽量地高。3.下列叙述中正确的是(分数:2.00)A.软件测试应该由程序开发者来完成B.程序经调试后一般
16、不需要再测试C.软件维护只包括对程序代码的维护D.以上三种说法都不对 解析:解析 本题考核软件测试、软件调试和软件维护的概念。软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。软件测试具有挑剔性,测试不是为了证明程序是正确的,而是在设想程序有错误的前提下进行的,其目的是设法暴露程序中的错误和缺陷,就是说,测试是程序执行的过程,目的在于发现错误;一个好的测试在于能发现至今未发现的错误;一个成功的测试是发现了至今未发现的错误。由于测试的这一特征,一般应当避免由开发者测试自己的程序。所以,选项A的说法错误。 调试也称排错,目的是发现错误的位置,并改正错误,经测试发
17、现错误后,可以立即进行调试并改正错误;经过调试后的程序还需进行回归测试,以检查调试的效果,同时也可防止在调试过程中引进新的错误。所以,选项 B的说法错误。 软件维护通常有 4类:为纠正使用中出现的错误而进行的改正性维护;为适应环境变化而进行的适应性维护;为改进原有软件而进行的完善性维护;为将来的可维护和可靠而进行的预防性维护。软件维护不仅包括程序代码的维护,还包括文档的维护。文档可以分为用户文档和系统文档两类。但无论是哪类文档,都必须与程序代码同时维护。只有与程序代码完全一致的文档才有意义和价值。所以,选项 C的说法错误。 综上所述,选项 A、B、C 的说法都错误,所以,选项 D为正确答案。4
18、.按照“后进先出”原则组织数据的数据结构是(分数:2.00)A.队列B.栈 C.双向链表D.二叉树解析:解析 “后进先出”表示最后被插入的元素最先能被删除。选项 A中,队列是指允许在一端进行插入、而在另一端进行删除的线性表,在队列这种数据结构中,最先插入的元素将最先能够被删除,反之,最后插入的元素将最后才能被删除,队列又称为“先进先出”的线性表,它体现了“先来先服务”的原则;选项 B中,栈顶元素总是最后被插入的元素,从而也是最先能被删除的元素,栈底元素总是最先被插入的元素,从而也是最后才能被删除的元素。队列和栈都属于线性表,它们具有顺序存储的特点,所以才有“先进先出”和“后进先出”的数据组织方
19、式。双向链表使用链式存储方式,二叉树也通常采用链式存储方式,它们的存储数据的空间可以是不连续的,各个数据结点的存储顺序与数据元素之间的逻辑关系可以不一致。所以选项 C和选项 D错误。5.下列叙述中正确的是(分数:2.00)A.线性链表是线性表的链式存储结构 B.栈与队列是非线性结构C.双向链表是非线性结构D.只有根结点的二叉树是线性结构解析:解析 一个非空的数据结构如果满足下列两个条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件,则称为线性结构。线性链表是线性表的链式存储结构,选项 A的说法是正确的。栈与队列是特殊的线性表,它们也是线性结构,选项 B的说法是错误
20、的:双向链表是线性表的链式存储结构,其对应的逻辑结构也是线性结构,而不是非线性结构,选项 C的说法是错误的;二叉树是非线性结构,而不是线性结构,选项 D的说法是错误的。因此,本题的正确答案为 A。6.对如下二叉树 (分数:2.00)A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA 解析:解析 二叉树后序遍历的简单描述如下:若二叉树为空,则结束返回。否则(1)后序遍历左子树:(2)后序遍历右子树;(3)访问根结点。 也就是说,后序遍历是指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历左子树,然后遍历右子树,最后访问根结点,并且在遍历左、右子树时,仍然先遍历左子树,然后遍历
21、右子树,最后访问根结点。根据后序遍历的算法,后序遍历的结果为 DEBFCA。7.在深度为 7的满二叉树中,叶子结点的个数为(分数:2.00)A.32B.31C.64 D.63解析:解析 在二叉树的第 k层上,最多有 2k-1(k1)个结点。对于满二叉树来说,每一层上的结点数都达到最大值,即在满二叉树的第 k层上有 2k-1个结点。因此,在深度为 7的满二叉树中,所有叶子结点在第 7层上,即其结点数为 2 k-1=27-1=64因此,本题的正确答案为 C。8.“商品”与“顾客”两个实体集之间的联系一般是(分数:2.00)A.一对一B.一对多C.多对一D.多对多 解析:解析 本题考核实体集之间的联
22、系。实体集之间的联系有 3种:一对一、一对多和多对多。因为一类商品可以由多个顾客购买,而一个顾客可以购买多类商品;所以,“商品”与“顾客”两个实体集之间的联系一般是“多对多”,选项 D正确。9.在 E-R图中,用来表示实体的图形是(分数:2.00)A.矩形 B.椭圆形C.菱形D.三角形解析:解析 在 E-R图中,用三种图框分别表示实体、属性和实体之间的联系,其规定如下:用矩形框表示实体,框内标明实体名;用椭圆状框表示实体的属性,框内标明属性名;用菱形框表示实体间的联系,框内标明联系名。所以,选项 A正确。10.数据库 DB、数据库系统 DBS、数据库管理系统 DBMS之间的关系是(分数:2.0
23、0)A.DB包含 DBS和 DBMSB.DBMS包含 DB和 DBSC.DBS包含 DB和 DBMS D.没有任何关系解析:解析 数据库管理系统 DBMS是数据库系统中实现各种数据管理功能的核心软件。它负责数据库中所有数据的存储、检索、修改以及安全保护等,数据库内的所有活动都是在其控制下进行的。所以,DBMS包含数据库 DB。操作系统、数据库管理系统与应用程序在一定的硬件支持下就构成了数据库系统。所以,DBS包含 DBMS,也就包含 DB。综上所述,选项 C正确。11.Java语言中,负责并发管理的机制是(分数:2.00)A.垃圾回收B.虚拟机C.代码安全D.多线程 解析:解析 选项 A,Ja
24、va 语言中,垃圾回收机制对系统中不使用的内存进行回收,从而使程序员从繁忙的内存管理中解放出来。选项 B,Java 编写好的程序首先由编译器转换为标准字节代码,然后由虚拟机执行。虚拟机把字节代码程序与各操作系统和硬件分开,使 Java程序独立于平台。选项 C,Java 的代码安全检测体现在多个层次上,在编译层、解释层、平台层分别作不同的安全检查。选项 D,多线程是 Java程序的并发机制,它能同步共享数、处理不同的事件。因此,本题的正确答案是 D。12.下列描述中,错误的是(分数:2.00)A.Java要求编程者管理内存 B.Java的安全性体现在多个层次上C.Applet要求在支持 Java
25、的浏览器上运行D.Java有多线程机制解析:解析 选项 A,为了充分利用资源,Java 有一个系统级的线程,用来对内存的使用进行跟踪,它可以在系统空闲时对不用的内存空间进行回收,从而使程序员从繁忙的内存管理中解放出来。选项B,Java 的代码安全检测体现在多个层次上,在编译层、解释层、平台层分别作不同的安全检查。选项C,Applet 本身不能运行,但能够嵌入到 Web浏览器中运行。选项 D,多线程是 Java程序的并发机制,它能同步共享数、处理不同的事件。因此,本题的正确答案是 A。13.Java为移动设备提供的平台是(分数:2.00)A.J2ME B.J2SEC.J2EED.JDK5.0解析
26、:解析 Java2 平台包括;J2ME 平台、J2SE 平台和 J2EE平台。其中:J2ME 是为嵌入式和移动设备提供的 Java平台,它的体系结构由 Profiles、Configuration 和 OptionalPackages 组成;J2SE 是面向企业级应用与服务的综合性标准开发平台:J2EE 是面向大型企业级用容器管理专用构件的应用平台。而JDK5.0是一个 Java开发软件包。因此本题的正确答案是 A。14.JDK中提供的文档生成器是(分数:2.00)A.javexeB.javaexeC.javadoexe D.javaproexe解析:解析 在 JDK中:java.exe 是
27、Java解释器,直接从类文件执行 Java字节码程序。 javap.exe是 Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。javadoc.exe 是文档生成器,对 Java源码和包以 MML格式产生 AP文档。 javaprof.exe 是 Java剖析工具,提供解释器剖析信息。 因此,本题的正确答案是 C。15.在 Java语言中,不允许使用指针体现出的 Java特性是(分数:2.00)A.可移植B.解释执行C.健壮性D.安全性 解析:解析 选项 A,Java 语言跨平台的特点,保证了软件的可移植性。此外,Java 本身的编译器也用Java语言编写,运行系统的
28、虚拟机用 C语言实现,这样,Java 系统本身也具有可移植性。选项 B,Java语言用字节码进行解释执行,字节本身带有许多编译时产生的信息。选项 C,健壮性也称为鲁棒性。Java语言在编译和运行时都有比较严格的检查。选项 D,Java 语言在运行程序时,有严格的访问权限检查。对字节代码执行前要检查,不允许使用指针,可防止对内存的非法入侵。 因此,本题的正确答案是 D。16.下列不属于 Swing中构件的是(分数:2.00)A.JPanelB.JTableC.Menu D.JFrame解析:解析 Swing 中的大多数构件名称都是在 AWT构件名前面加了一个“J”。因此,很容易判断选项C不是 S
29、wing中的构件。 JPanel 是 Swing的中间容器;JTable 是 Swing中可编辑信息的构件;JFrame是 Swing的顶层容器。因此选项 A、B、D 都是 Swing中的构件。17.下列方法中,不属于 WindowListener接口的是(分数:2.00)A.windowOpened()B.window Closed()C.window Activated()D.mouseDragged() 解析:解析 Window Listener 接口包含的方法是: windowActivated (WindowEvent) windowOpened (WindowEvent) wind
30、owClosed (WindowEvent) windowCloshlg (WindowEvent) windowDeactivated (WindowEvent) windowDeiconified (WindowEvent) windowlconified (WindowEvent) 因此不属于 WindowListener接口的方法是 D。 补充:在 AWT中,接口的命名是与事件相对应的,比如 WindowEvent事件所对应的接口就是 WindowListener,而 MouseEvent事件所对应的接口就是 WouseListener。同时,接口中方法的命名也是与事件相对应的,比如
31、WindowListener接口中包含的方法的名称都是以 window开头,而 WouseListener接口中包含的方法的名称都是以 mouse 开头。 针对本题,在不知道具体 WindowListener接口中包含的方法时,根据 AWT中接口和接口中方法的命名原则,也可以答对本题。18.下列语句中,属于多分支语句的是(分数:2.00)A.if语句B.switch语句 C.do while语句D.for语句解析:解析 do while 语句和 for语句是循环语句;if 语句和 switch语句是分支语句。而 if 语句称为条件语句,switch 语句称为多分支语句。 因此,本题的正确答案是
32、 B。19.阅读下列代码 public class Test 2005 public static void main(String args) Strings=“Test“; switch(s) case “Java“:System.out.print(“Java“); break; case “Language“:System.out.print(“Language“); break; case “Test“:System.out.ptint(“Test“); break; 其运行结果是(分数:2.00)A.JavaB.LanguageC.TestD.编译出错 解析:解析 程序中只有一个
33、switch语句,因此本题考查 switch语句的用法。switch 语句是多分支语句,即根据表达式的值来执行多个操作中的一个。其一般格式为: switch(表达式) case value l:语句 1; break; case value2:语句 2; break; case value N:语句 N; break; default:语句N+1; 在 switch语句中,“表达式”的返回值类型必须是这几种类型之一:int,byte,char, short。本题中,switch 的表达式 s是一个字符串 String类型的值,它不是血、byte、 char、short 中的任意一个。因此表达式
34、 s的类型不对,编译时报错。因此,本题的正确答案是 D。20.阅读下列代码 public class Test 2005 public static void main(String args) System.out.println(0xa5)&0xaA) ; 其运行结果是(分数:2.00)A.0xa5B.10 C.0x50D.0xaa解析:解析 这段程序代码非常简单,就是在屏幕上输出表达式(Oxa5)&Oxaa 的结果。“”和“&”是位逻辑运算符:按位取反运算符“”的运算规则是对数据的每个二进制位取反,即把 1变为 0,把 0变为 1;按位与运算符“&”的运算规则是,如果两个操作数中,相应位
35、都为 1,则该位的结果为 1,否则为 0。 解答这道题,首先要把十六进制数 Oxa5和 Oxaa转换为二进制数的形式,转换的方法是把一位十六进制用四位二进制表示。因此,Oxa5 的二进制形式为 10100101,Oxaa 的二进制形式为 10101010。在位运算符中,“”的优先级高于“&”。所以首先计算10100101,其结果为 01011010。然后再计算01011010&10101010,其结果为 00001010。最后将二进制数 00001010转换为十进制数,即为 10。因此,本题的正确答案是 10。21.阅读下列代码 public class Test 2005 public st
36、atic void main(String args) System.out.println(32)?4:5); 其运行结果是(分数:2.00)A.2B.3C.4 D.5解析:解析 这段程序代码非常简单,就是在屏幕上输出表达式(32)?4:5 的结果。显然,?:是条件运算符。它的一般形式为:表达式?语句 1:语句 2。其中,表达式应该是关系或布尔逻辑表达式,其计算结果为布尔值。如果该值为 true,则计算语句 1,并将计算结果作为整个条件表达式的结果;如果为false,则计算语句 2,并将计算结果作为条件表达式的结果。本题中关系表达式(32)的结果是 true,因此表达式(32)94:5 的运
37、算结果为 4。 因此,本题的正确答案是 C。22.阅读下列代码 public class Test public static void main(String args) System.out.println(891); 其运行结果是(分数:2.00)A.44 B.45C.88D.90解析:解析 这段程序代码非常简单,就是在屏幕上输出表达式“891”的结果。“”是算数右移运算符。“891”是将 89的各二进制位右移 1位,移到右端的低位被舍弃,最高位则移入原来高位。Java使用补码来表示二进制数,因此 89的二进制补码是 01011001,则 891=00101100,00101100 对应
38、的十进制数为 44。除此之外,还有一个简便算法。算数右移一位相当于除 2取商。89 除以 2,商是44。所以 891 的结果是 44。因此,本题的正确答案是 A。23.在 Applet中显示文字、图形等信息时,应使用的方法是(分数:2.00)A.paint() B.init()C.start()D.destroy()解析:解析 选项 A中的 paint()是与 Applet显示相关的方法,由它来具体执行 Applet的绘制功能。选项 B中的 init()方法用于初始化 Applet,它在 Applet的生命周期中,只在最初执行一次。选项 C中的start()方法用于激活 Applet。在 in
39、it()方法完成后,将调用 start()方法,并且在 Applet每次显示时都要调用。选项 D中的 destroy()方法用于彻底终止 Applet,从内存卸载并释放该 Applet的所有资源。因此,正确答案是 A。24.线程生命周期中正确的状态是(分数:2.00)A.新建状态、运行状态和终止状态B.新建状态、运行状态、阻塞状态和终止状态C.新建状态、可运行状态、运行状态、阻塞状态和终止状态 D.新建状态、可运行状态、运行状态、恢复状态和终止状态解析:解析 线程的状态与生命周期如下图所示: 25.Thread类中能运行线程体的方法是(分数:2.00)A.start()B.resume()C.
40、init()D.run() 解析:解析 选项 A,start()是 Thread类中的方法。新建的线程不会自动运行,必须调用线程的start()方法,才能运行该线程。选项 B,resume()是 Thread类提供的用于线程控制的方法。调用该方法,用于恢复因调用 suspend()而暂停的线程继续执行。选项 C,init()不是 Thread类中的方法。选项 D,run()是 Thread类中的方法,在该方法中定义了线程的具体行为。线程开始执行时,就是从它的 run()方法开始执行的,就像 Java应用程序从 main()开始、Applet 从 init()开始一样。因此正确答案是 D。26.
41、下列关于 Applet的说法中,错误的是(分数:2.00)A.Applet自身不能运行,必须嵌入到其他应用程序(如浏览器)中运行B.可以在安全策略的控制下读写本地磁盘文件C.Java中不支持向 Applet传递参数 D.Applet的主类要定义为 javappleApplet类的子类解析:解析 选项 A,Applet 自身不能够运行,它必须嵌入在其他应用程序(如 Web浏览器或 Java appletviewer中运行。选项 B,Java 中引入了灵活的安全体系,它允许为每个 Applet和 Application指定安全策略,该安全策略可以设置 Applet对本地资源的访问权限。在安全策略的
42、控制下,Applet 可以读写本地磁盘中的文件。选项 C, Applet 获取参数是通过在 HTML文件中采用PARAM标记来定义参数。Java中还定义了相应的方法,用来从 HTML中获取参数。选项 D,任何嵌入在 Web浏览器或 Java appletviewer中的 Applet必须是 java.applet.Applet类的子类。Applet 类定义了 Applet与其运行环境之间的一个标准接口。因此,本题的正确答案是 C。27.下列选项中,不是 APPLET标记的是(分数:2.00)A.PARAMB.BODY C.CODEBASED.ALT解析:解析 必须使用特殊的 HTML标记APP
43、LET实现 Applet或者 JApplet的嵌入运行。 APPLET标记格式 APPLET标记的一般格式是: APPLET CODEBSE=codebaseURL CODE=appletFile ALT=altemate Text NAME=appletInstanceName WIDTH=pixels HEIGHT=pixels ALIGN=alignment CVSPACE=pixels HSPACE=pixels ARCHIVE=archiveFiles PARAMNAME=appletParameter1 VALUE=value PARAMNAME=appletParameter2V
44、ALUE=value? altemateHTML 从上面格式可以看出,PARAM、CODEBASE、ALT 都是 APPLET标记。因此,本题的正确答案是 B。28.在 Java中,与数据库连接的技术是(分数:2.00)A.ODBCB.YDBC C.数据库厂家驱动程序D.数据库厂家的连接协议解析:解析 ODBC,即开放数据库联接(Open Datebase Connectivity),它是用 C语言定义的。由于J2EE要求与 Java绑定,因此出现了 JDBC,作为 Java与数据库连接的技术。因此,本题的正确答案是B。29.下列命题中,错误的是(分数:2.00)A.Java编程时,要求应尽量
45、多用公共变量B.Java编程时,要求应尽量少用公共变量 C.Java编程时,要求应尽量不用公共变量D.Java编程时,要求应尽量使用私有变量解析:解析 由于面向对象技术的封装要求,应该尽量少用公共变量,而是通过公共方法间接访问类的成员变量,从而提高程序的稳定性。因此,本题的正确答案是 B。30.若特快订单是一种订单,则特快订单类和订单类的关系是(分数:2.00)A.使用关系B.包含关系C.继承关系 D.无关系解析:解析 继承是 Java语言的一个特性,允许将一个类定义为一个更通用类的特例。特殊类称为子类,通用类称为父类。特快订单类和订单类,这两者有显著的类似性,共享很多属性及方法。除了订单类的
46、属性外,特快订单类可能还有其他一些特殊属性。显然,订单类是通用类,即父类;而特快订单类是定单类的一个特例,是子类。订单类和特快订单类是继承关系。因此,本题的正确答案是 C。31.若数组 a定义为 inta=new int34,则 a是(分数:2.00)A.一维数组B.二维数组 C.三维数组D.四维数组解析:解析 二维数组可以有如下的两种定义方式: type array Name; type arrayName; 由此可见,题目中的语句定义了一个二维数据。 因此,本题的正确答案是 B。32.Java语言使用的字符码集是(分数:2.00)A.ASCIIB.BCDC.DCBD.Unicode 解析:
47、解析 Java 语言使用的是 Unicode字符集。而 ASCII是国际上使用最广泛的字符编码:BCD 是一种数字压缩存储编码方法。因此,本题的正确答案是 D。33.在程序读入字符文件时,能够以该文件作为直接参数的类是(分数:2.00)A.FileReader B.BufferedReaderC.FileInputStreamD.ObjectInputStream解析:解析 FileReader、BufferedReader 是字符类输入流。FileInputStream 是字节输入流。对象串行化时,需要使用 ObjectInputStream类中提供的方法从对象流中读取对象。所以,在程序读入字符文件时,要使用字符流 FileReader或 BufferedReader。但是 FileRead 的参数是读入的文件,而BufferedReader的参数是 FileRead流的一个对象。因此,本题的正确答案是 A。34.java.io包的 File类是(分数:2.00)A.字符流类B.字节流类C.对象流类D.非流类 解析:解析 Java 的 io包中的类可以处理不同类型的流,比如字节流、字符流、对象流、非流类等等。File类就是一个重要