1、国家二级( JAVA)笔试模拟试卷 59及答案与解析 1 算法的空间复杂度是指 ( A)算法程序的长度 ( B)算法程序中的指令条数 ( C)算法程序所占的存储空间 ( D)算法执行过程中所需要的存储空间 2 下列关于队列的叙述中正确的是 ( A)在队列中只能插入数据 ( B)在队列中只能删除数据 ( C)队列是先进先出的线性表 ( D)队列是先进后出的线性表 3 在深度为 5的满二叉树中,叶子结点的个数为 ( A) 31 ( B) 32 ( C) 16 ( D) 15 4 下列叙述中正确的是 ( A)在 模块化程序设计中,一个模块应尽量多地包括与其他模块联系的信息 ( B)在自顶向下、逐步细
2、化的设计过程中,首先应设计解决问题的每一个细节 ( C)在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则 ( D)在程序设计过程中,不能同时采用结构化程序设计方法与模块化程序设计方法 5 下列叙述中正确的是 ( A)程序执行的效率与数据的存储结构密切相关 ( B)程序执行的效率只取决于程序的控制结构 ( C)程序执行的效率只取决于所处理的数据量 ( D)以上三种说法都不对 6 在软件生存周期中,能准确 地确定软件系统必须做什么和必须具备哪些功能的阶段是 ( A)概要设计 ( B)详细设计 ( C)可行性分析 ( D)需求分析 7 软件需求分析阶段的工作,可以分为四个方面:需求获取,
3、需求分析,编写需求规格说明书,以及 ( A)阶段性报告 ( B)需求评审 ( C)总结 ( D)都不正确 8 在关系数据库中,用来表示实体之间联系的是 ( A)树结构 ( B)网结构 ( C)线性表 ( D)二维表 9 在面向对象的程序设计中,下列叙述中错误的是 ( A)任何一个对象构成一个独立的模块 ( B)一个对 象不是独立存在的实体,各个对象之间有关联,相互依赖 ( C)下一层次的对象可以继承上一层次对象的某些属性 ( D)上述三种说法都正确 10 将 E-R图转换到关系模式时,实体与联系都可以表示成 ( A)属性 ( B)关系 ( C)键 ( D)域 11 下列不属于虚拟机执行过程的特
4、点的是 ( A)多线程 ( B)动态连接 ( C)异常处理 ( D)代码安全检查 12 下列说法中,正确的一项是 ( A) Java语言是以类为程序的基本单位的 ( B) Java语言是不分大小写的 ( C)多行注释语句必须以 /开始 ( D)在 Java语言中,类的源文件名和该类名可以不相同 13 下列关于实型变量书写正确的是 ( A) E3 ( B) 2e0 3 ( C) 1200 ( D) 1 2E0 3 14 下列与其他选项不相等的是 ( A) 15 ( B) 0xF ( C) 15 ( D) 0XF 15 设 a=8,则表达式 a 1的值是 ( A) 1 ( B) 2 ( C) 3
5、( D) 4 16 下列对类的声明,正确的是 ( A) abstract final class Hh ( B) abstract private move() ( C) protected private number; ( D) public abstract class Car 17 Java中用于提供 Java语言、 Java虚拟机的核心的类和接口的包是 ( A) java io包 ( B) java applet包 ( C) java lang包 ( D) java net包 18 下列关于 JDK目录结构的说法,错误的是 ( A) bin目录下有许多工具 ( B) demo目录下有
6、各种演示例子 ( C) include目录下都是库文件 ( D) jre目录是 Java程序运行环境的根目录 19 下列说法正确的是 ( A)类 FilelnputStream和 FileOutputStream 用宋进行文件 I/O处理,由它们所提供的方法可以打开本地主机上的文件,并进行顺序的读 /写 ( B)通过类 File的实例或者一个表示文件名称的字符串可以生成文件输入 /输出流,在流对象生成的同时,文件被打开,但还不能进行文件读 /写 ( C)对于 InputStream 和 OutputStream来说,它们的实例都是是非顺序访问流,即只能进行顺序的读 /写 ( D)当从标准输入
7、流读取数据时,从键盘输入的数据直接输入到程序中 20 能将程序补充完整的选项是 class Person private int a; public int change(int m)return m; public class Teacher extends Person public int b; public static void main(String arg) Person p=new Person(); Teacher t=new Teacher(); int i; _ ( A) i=m ( B) i=b ( C) i=p a ( D) i=p change(50) 21 下列
8、java组件中,不属于容器的是 ( A) Panel ( B) Window ( C) Frame ( D) Label 22 下列组件不能添加进 Frame主窗口的是 ( A) Panel ( B) CheckBox ( C) Dialog ( D) Choice 23 下面程序段的输出结果是 public class Test public static void main(String args) inta=new int11; intp=new int4; int k=5; for(int i=1; i=10)break; if(b%2=1) b+=2; continue; Syste
9、m out println(a) ; ( A) 5 ( B) 6 ( C) 7 ( D) 101 36 某二叉树中度为 2的结点有 18个,则该二叉树中有【 】个叶子结点。 37 在面向对象方法中,类的实例称为【 】。 38 诊断和改正程序中错误的工作通常称为【 】。 39 在关系数据库中,把数据表示成二维表,每一个二维表称为【 】。 40 关系数据库管理系统能实现的专门关系运算包括选择、连接和【 】。 41 Java简单性首先表现在自身系统的精练,它的基本解释程序和【 】占内存40KB,附加的基本标准类库和支持线程程序占 175KB。 42 如果有一个 类 MyFrame是 Frame的子类
10、,能够被不同包中的类所使用,请写出该类的声明头:【 】。 43 在 Java中所实现的多维数组,实际上是由一维数组构成的【 】。 44 Java中的继承机制之所以能够降低程序的复杂性,提高编程的效率,主要是因为它使代码可【 】。 45 每个 Applet程序必须有一个类是【 】类的子类。 46 线程在生命周期中要经历 5种状态,分别是新建状态、可运行状态、运行状态、【 】状态和终止状态。 47 下列程序创建了一个线程并运行,请填空,使程序完整。 public class ThreadTest public static void main(String args) Hello h=new He
11、llo(); 【 】 ; t.start (); class Hello implements Runnable int i; public void run() while(true) System.out.println(“Hello“+i+); if(i=5) break; 48 Swing的事件处理机制包括【 】、事件和事件监听者。 49 请阅读下列程序代码,然后将程序的执行结果补充完整。 程序代码: public class throwsException static void Proc(int sel) throws ArithmeticException, ArrayIndex
12、OutOfBoundsException System.out.println(“In Situation“+sel); if(sel=0) System.out.println(“no Exception caught“); return; else if(sel=1) int iArray=new int4; iArray1=3; public static void main(String args) try Proc(0); Proc(1); catch (ArrayIndexOutOfBoundsException e) System.out.println(“Catch“+e);
13、finally System.out.println(“in Proc finally“); 执行结果 In Situation 0 no Exception caught 【 】 in Proc finally 50 请写出下面程序的运行结果: public class Test extends TT public static void main(String args Test t=new Test (“Tom.“); public Test(String s) super (s); System.out.print(“How are you?“); public Test() this
14、(“I am Jack.“); class TT public TT() System.Out.print (“Hi!“); public TT(String s) this (); System.out.print(“I am“+s); 结果:【 】。 国家二级( JAVA)笔试模拟试卷 59答案与解析 1 【正确答案】 D 【试题解析】 算法的空间复杂度指执行这个算法所需要的内存空间。一个算法所占用的存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行过程中所需要的额外空间。正确答案为 D。 2 【正确答案】 C 【试题解析】 队列是指允许在一端进行插入而在另一端进行删
15、除的线性表,选项A和选项 B错误。允许插入的一端称为队尾,允许删除的一端称为队头。在队列中,最先插入的元素将最先能够被删除:反之 ,最后插入的元素将最后才能被删除。所以,队列又称为 “先进先出 ”或 “后进后出 ”的线性表,它体现了 “先来先服务 ”的原则,选项 C正确,选项 D错误。 3 【正确答案】 C 【试题解析】 二叉树的一个性质是,在二叉树的第 k 层上,最多有 2(k-1)(k=1)个结点。对于满二叉树,每一层上的结点数都达到最大值,即在满二叉树的第 k层上有 2k-1个结点。所以,在深度为 5的满二叉树中,所有叶子结点在第 5层上,即其结点数为 2(k-1)=2(5-1)=16。
16、 4 【正确答案】 C 【试题解析】 选项 A错误, 在模块化设计中,要求将一个大程序按人们能理解的大小规模进行分解,使每个模块都能易于理解,各模块的功能尽量单一,各模块之间的联系尽量的少。选项 B 错误,自顶向下、逐步细化的设计过程主要包括两个方面:将复杂问题的解法分解和细化成由若干模块组成的层次结构:将一个模块的功能逐步分解细化为一系列的处理步骤,直到某种程序设计语言的语句或某种机器指令。即在自顶向下、逐步细化的设计过程中,是按照先全局后局部、先整体后细节、先抽象后具体的方法设计程序。选项 D错误,由于在模块化程序设计中,一个模块内部的控制结构也要符合结构化原则 ,所以,在程序设计过程中,
17、结构化程序设计方法与模块化程序设计方法是要同时采用的。选项 C为正确答案。 5 【正确答案】 A 【试题解析】 程序执行的实际计算工作量不仅与程序的控制结构有一定的关系,还与处理的数据量有关,与数据的存储结构密切相关。所以,选项 A正确,选项B 和 C错误。所以,本题的正确答案为 A。 6 【正确答案】 D 【试题解析】 在需求分析阶段中,根据可行性研究阶段所提交的文档,特别是从数据流图出发,对目标系统提出清晰、准确和具体的要求,即要明确系统必须做什么的问题。本题的正确答 案为 D。 7 【正确答案】 B 【试题解析】 需求分析阶段的工作,可以概括为以下 4个方面:需求获取、需求分析、编写需求
18、规格说明书和需求评审。本题的正确答案为 B。 8 【正确答案】 D 【试题解析】 在关系模型中,把数据看成一个二维表,每一个二维表称为一个关系。即关系模型是用表格数据来表示实体本身及其相互之间的联系。本题的正确答案是 D。 9 【正确答案】 B 【试题解析】 在面向对象的程序设计中,一个对象是一个可以独立存在的实体。各个对象之间相对独立,相互依赖性小。所以,选项 B 错 误,应为所选。 10 【正确答案】 B 【试题解析】 把概念模型转换成关系数据模型,就是把 E-R图转换成一组关系模式,每一个实体型转换为一个关系模式,每个联系分别转换为关系模式。本题的正确答案是 B。 11 【正确答案】 D
19、 【试题解析】 本题考查虚拟机执行过程的特点。 Java虚拟机是编译器生成的字节码,不用考虑具体的硬件环境,实现一次编写,随处运行,实现其可移植性。虚拟机执行过程的特点有:多线程、动态连接、异常处理。代码安全检查是 Java语言的一个突出特点,但不属于虚拟机执行过程特点。 12 【正确答案】 A 【试题解析】 本题考查考生对 Java语言概 念的理解,属于考试重点内容,历次考试都有相关内容,应该理解这些基本概念。 Java语言是分大小写的,这一点在初学 Java时需要特别注意,这一点与 C语言有所不同, B选项错误;以 /开始的应该是单行的注释语句,因此选项 C错误。 Java中有三类注释语句
20、:文档注释/*/ ,被 javadoc处理,可以建立类的一个外部说明性文件; C语言注释风格/*/ ,用于去掉当前不再使用但仍想保留的代码等:单行注释从格式上要求注释符 /后必须紧跟一个空格,然后才是注释信息。 Java程序源文件名必须和 public类名相同,否则编译 出错,因此选项 D错误。只有选项 A说法正确。 13 【正确答案】 C 【试题解析】 本题考查实型变量科学计算格式的书写。在科学计算格式中, e或E 是指数符,要求在 e/E 之前必须有数字,选项 A错误。同时还要求在 e/E 之后必须是整数,选项 B 和选项 D错误。虽然题目非常简单,但是不容易正确回答。正确答案为选项 C。
21、 14 【正确答案】 C 【试题解析】 本题考查 Java语言中的进制换算。考生首先要清楚各种进制的表示方法,整型常量有 3种书写格式:十进制整数,如 156, -230, 345:八进制整数:以 0开头,如 012表示十进制的 10;十六进制整数:以 0x 或 0X开头,如0X123表示十进制数 291。选项 A是十进制的 15,选项 B 和选项 D都是十六进制中的 F相当于十进制的 15,选项 C为八进制,以 0开头,此处 015相当于十进制的 13,与其他选项不同。 15 【正确答案】 D 【试题解析】 本题考查考生对位运算符中无符号右移运算符的掌握。无符号右移运算符 ,也叫逻辑右移,用
22、于将一个数的各二进制位全部无符号右移若干位,与运算符 不同的是左补 0,而 则是最高位移入原来高位的值。在本题中, 8的二进制表 示是 1000,右移两位后变成了 0100,对应的十进制数是 4。可见,正确答案为选项 D。 16 【正确答案】 D 【试题解析】 本题考查类的声明。选项 A错误, abstract用来声明抽象类, final用来声明最终类,这两个修饰词不能同时出现在类声明中:选项 B 错误,缺少class 关键字:选项 C错误,类不能声明为 protected 和 private属性,且不以 “; ”结尾,也缺少 class 关键字;选项 D正确,声明了一个可以公有继承的抽象类。
23、 17 【正确答案】 C 【试题解析】 本题考查考生对 Java语言中的类和接口的理解。 java lang包提供了构成 Java语言、 Java虚拟机核心的类和接口。例如,类 Objet类 String和类 Thread 等。对任何一个 Java程序来说,这些类几乎都是必不可少的。java lang还包含了许多由 Java虚拟机发出的异常,这些异常也是 “类 ”的一种。另外, java lang 包还包含一些用于访问系统资源的类,如 ClassLoader等。java lang包具有极其重要的作用,在程序开头可以不必明文编写装载它的代码。 18 【正确答案】 C 【试题解析】 本题 考查 J
24、DK目录结构。 bin目录下有编译器、解释器和各种工具,如服务器工具、 IDL、 package工具和 jdb 等。 jre目录是 Java程序运行环境的根目录,它下面有 bin 子目录,包括平台所用工具和库的可执行文件和 DLL文件; lib 子目录包括 java运行环境的代码库。 lib 目录下都是库文件。 demo目录下有各种演示例子。 include目录下是 Win32 子目录,都是本地方法文件,选项 C错误。 19 【正确答案】 A 【试题解析】 本题是考查对文件输入、输出流的理解。通过类 File 的实例或者一个表示文件 名称的字符串可以生成文件输入 /输出流,在流对象生成的同时,
25、文件被打开,然后就可以进行文件读 /写,选项 B说法错误。对于 InputStream和OutoutStream来说,它们的实例都是顺序访问流,即只能进行顺序的读 /写,选项C说法错误。当从标准输入流读取数据时,从键盘输入的数据被缓冲,按回车键时,程序才会得到输入数据,选项 D说法错误。 20 【正确答案】 D 【试题解析】 本题考查类的声明。选项 A中 m没有被声明过,不能使用;选项B 中虽然 b 是类 Teacher的 public成员变量,但在静态方法中, 不能使用类中的非静态成员;选项 C中 a是类 Person 的 private成员,在类外不能直接引用:选项 D中 change(i
26、nt m)方法是 public方法,并且返回一个血型值,可以通过类的实例变量 p 引用并赋值给一个 int型变量。 21 【正确答案】 D 【试题解析】 本题考查对 java组件中容器的基本知识的理解。选项 A错误,Panel 类派生自容器类 Container,属于容器的一种。选项 B 错误, Window类也派生自容器类 Container,也属于容器的一种。选项 C错误, Frame类派生自Window类,也是一种容器。选项 D正确, Label 组件是标签组件,不属于容器。故本题答案选项是 D。 22 【正确答案】 C 【试题解析】 本题考查, java组件中容器的基本知识。选项 A错
27、误, Panel 组件是容器,可以添加到 Frame窗口。选项 B错误, CheckBox组件是复选框组件,可以添加到 Frame窗口。选项 C正确, Dialog继承自 Window,Windows 类型 (或子类 )的对象不能包含在其他容器中。选项 D错误, Choice组件是选择框组件,可以添加到 Frame窗口。 23 【正确答案】 C 【试题解析】 本题是对 for循环语句和数组的综合考查。题中共定义了两个数组 :a和 p,共用了 3次 for循环;第 1个 for语句对数组 ai赋值;第 2个 for语句和对数组 pi赋值;第 3个 for语句计算 k的值。 3次循环分别得到: 5
28、, 15和33。正确答案为选项 C。 24 【正确答案】 C 【试题解析】 本题考查线程的机制。守护线程是一类特殊的线程,它和普通线程的区别在于它并不是应用程序的核心部分,当一个应用程序的所有非守护线程终止运行时,即使仍然有守护线程在运行,应用程序也将终止;反之, 只要有一个非守护线程在运行,应用程序就不会终止。守护线程一般被用于在后台为其他线程提供服务。可以通过调用方法 isDaemon()来判断一个线程是否是守护线程,也可以调用方法 setDaemon()来将一个线程设为守护线程。 25 【正确答案】 B 【试题解析】 本题考查对运算符优先级的理解。赋值运算总是等号右边的运算优先于等号左边
29、的运算。 op+(op-)表示先取操作数的值 op,然后再对它进行加1(减 1)操作:而 +op(-op)表示先将操作数的值加 1(减 1),然后再取值。 Z-=3,+x=2,本题的表达式相当于: y=2+3/(1+1),结果为 3 5。 26 【正确答案】 B 【试题解析】 本题考查 Java语言中字节类型的概念。在 Java语言中, byte是字节类型,用一个字节表示; boolean 是布尔类型,用 true和 false表示,它们的表示方法并不一样,也不提供它们之间的转换,选项 A错误。 Java内部用整数宋表示 char,通常可以在方法调用和其他语句中互换使用 char和 int,选
30、项 B 正确。char用两个字节表示, byte字节类型用一个字节表示, Java内部也不允许互换使用它们, 选项 C错误。 String在 Java语言中是一个类,它提供对字符串的一系列操作,而 char是 Java语言中的一个基本类型,它不是一个类,两者有本质的区别,故而它们是不能互换使用的,选项 D错误。需要注意的是,在 Java语言中提供的类都是以大写字母开头,基本类型都用小写字母表示。 27 【正确答案】 D 【试题解析】 本题考查 Applet中 HTML 标记方法。 URLgetDocumentBase0 返回包含 Applet的 HTML 文件的 URL,而不是返回 Apple
31、t主类的 URL,选项 A错误。 URLgetCOdeBase()返回 Applet主类的 URL,而不是返回包含 Applet的HTML 文件的 URL,选项 B错误。 StringgetParameter(stringname)返回定义在HTML 文件的指定参数,如果指定参数在 HTML 中无说明,该方法将返回“null”,而不是 “0”,因此选项 C错误。 28 【正确答案】 B 【试题解析】 本题考查 Java小程序安全限制的概念。因为 Java小程序运行在Web 用户的系统上,所以对小程序所能完成的工作有一些严格的限制。它们不能读写用户的文件系统,选项 A说法错误。它们 不能与提供包
32、含小程序的网页的站点之外的 Internet站点联系,选项 B 说法正确。它们不能在阅读者的系统上运行任何程序,选项 C说法错误。它们不能加载存储在用户系统上的程序,如可执行程序和共享库。所有这些规则适用于运行在浏览器下的 Java小程序,选项 D说法错误。 29 【正确答案】 D 【试题解析】 本题考查 resume()方法的使用。在 Thread 的 API 文档中的说明是该方法恢复被挂起 (suspendeD) 的线程。该方法首先调用该线程的无参的checkAccess()方法,这可能在当前线程上抛出 SecurityException 异常,如果该线程是活着的 (alive)但被挂起
33、(suspenD) ,它被恢复并继续它的执行进程。 30 【正确答案】 C 【试题解析】 本题考查对 Applet必须要重载的几个方法的理解。选项 A错误,start()方法使得程序从初始态进入运行态,当浏览器从图标状态恢复为窗口时,或者当用户离开包含 Applet的主页后又再返回时,系统都会自动再执行一遍 start()方法。选项 B 错误, stop()方法是和 start()方法相对应的,当浏览器变成图标或者是用户离开 Applet所在页面时,浏览器都会调用 stop()方法,该方法也是可以被多次调用的。选项 C正确,当创建 JavaApplet且第一次使用支持 Java的浏览器载入该
34、Applet时,就会执行 init()方法,通常在这方法中执行一次性的初始化操作。选项 D错误, paint()方法是画图时必须要重载的方法。 31 【正确答案】 C 【试题解析】 本题考查对成员变量的声明。成员变量的声明格式位:修饰符 type变量名;其中 type可以是 java语言中的任意数据类型,而修饰符可以是 public、protected, private, static, final, transient, volatile等。选项 A错误,成员变量不能同时声明成 public和 protected。选项 B是类的声明格式,并不是成员变量的声明。成员变量声明应以 “; ”结尾,
35、选项 D错误。选项 C声明了一个私有的double型成员变量,为正确答案。 32 【正确答案】 A 【试题解析】 本题考查线程的创建和调用。创建一个新的线程对象后,通过使用start()方法就可以启动该线程,线程也就处于可运行状态 Runnable。 Start()方法产生了线程运行需要的 系统资源,并调用线程体,也就是 run()方法,使得线程可以进入运行状态。程序运行时首先创建一个新的线程对象 t,并调用displayOutput(Strings)方法输出 thas been created。 t start()方法调用 run()方法,输出 t is running,所以正确答案为选项
36、A。 33 【正确答案】 C 【试题解析】 本题考查异常的概念。首先应该掌握题目选项中给出的都是什么类型的异常。选项 A是当访问数组中非法元素时引发,出现数组负下标异常。选项B 是格式化数字异常。选项 C是算术异常 ,如程序触发分母为 0,或用 0取模时出现。选项 D是文件已结束异常。当 Java执行这个算术表达式的时候,由于求模运算的分母是 a-b-d=0,就会构造 个 ArithmeticException 的异常对象宋使程序停下宋并处理这个错误的情况,在运行时抛出这个异常。默认的处理器打印出Exception 的相关信息和发生异常的地点。 34 【正确答案】 C 【试题解析】 本题考查关
37、系运算符 =10 时退出 for循环,第 2个 if 语句的意义为:如果 b%2=1,则 b 的值加 2并退出本次循环。本程序当 b 的值分别为 1、3、 5、 7和 9的时候执行 5次循环,此时 a=5, b=9,当执行第 6次循环时, a的值为 6但 b=11,所以退出循环,程序结束。 36 【正确答案】 19 【试题解析】 二叉树具有如下性质:在任意一棵二叉树中,度为 0的结点 (即叶子结点 )总是比度为 2的结点多一个。根据题意,度为 2的结点为 18 个,那么,叶子结点应当是 19个。 37 【正确答案】 对象 【试题解析】 类描述的是具有相似性质的一组对象。例如,每本具体的书是一个
38、对象,而这些具体的书都有共同的性质,它们都属于更一般的概念 “书 ”这一类对象。一个具体对象称为类的实例。 38 【正确答案 】 调试 或 程序调试 或 软件调试 或 Debug(英文字母大小写均可 )或调试程序或调试软件 【试题解析】 调试也称排错,调试的目的是发现错误的位置,并改正错误。一般的调试过程分为错误侦查、错误诊断和改正错误。 39 【正确答案】 关系 或 关系表 【试题解析】 在关系模型中,把数据看成一个二维表,每一个二维表称为一个关系。表中的每一列称为一个属性,相当于记录中的一个数据项,对属性的命名称为属性名,表中的一行称为一个元组,相当于记录值。 40 【正确答案】 投影 【
39、试题解析】 关 系数据库管理系统的专门关系运算包括选择、连接和投影。选择运算是在指定的关系中选取所有满足给定条件的元组,构成一个新的关系,而这个新的关系是原关系的一个子集;投影运算是在给定关系的某些域上进行的运算。通过投影运算可以从一个关系中选择出所需要的属性成分,并且按要求排列成一个新的关系,而新关系的各个属性值来自原关系中相应的属性值;连接运算是对两个关系进行的运算,其意义是从两个关系的笛卡儿积中选出满足给定属性间一定条件的那些元组。 41 【正确答案】 类库 【试题解析】 本题考查 Java语言的特点, Java简单性首先表现在自身系统的精练,它的基本解释程序和类库占内存 40KB,附加
40、的基本标准类库和支持线程程序占 175KB,力图用最小的系统完成尽可能多的功能。 42 【正确答案】 public class MyFrame extends Frame 【试题解析】 本题考查对类声明的理解。类声明的格式为: 修饰符 class 类名 extends 父类名 implements 类实现的接口列表 43 【正确答案】 数组的数组 【试题解析】 本题考查多维数组的概念。 Java中没有多维数组 这种数据结构,只有一维数组,在 Java中实现的所谓的多维数组,实际上是由一维数组 “焊接 ”而成的 “数组的数组 ”。也就是说,某个一维数组的元素是另一个一维数组,则称之为二维数组,依
41、次类推,一维数组的多次嵌套定义,构成了多维数组。 44 【正确答案】 重用或复用 【试题解析】 本题考查 Java中的继承机制。继承性是面向对象方法的一个重要基本特征,它使代码可以重用,可降低程序复杂性。 Java语言中,所有的类都是通过直接或间接地集成 java.lang.Obiecter 而得到的。 45 【正确答案】 Applet 【试题解析】 本题考查 Applet的概念。 Applet是考试重点内容,涉及知识点较多,注意全面复习。生成 Applet必须创建 Applet类的子类, Applet的行为框架由 Applet来决定。所以每个 Applet程序必须有一个类是 Applet类的
42、子类。 46 【正确答案】 阻塞 【试题解析】 本题考查线程的生命周期。线程一旦创建,就开始了它的生命周期。线程的声明周期主要分为:新建状态 (new),线程创建后处于该状态:可运行状态 (Runnable),新建的线程调用 start()方 法,将使线程的状态从 New 转换为Runnable;运行状态 (Rlmning),运行状态使线程占有 CPU并实际运行的状态;阻塞状态 (BlockeD) ,导致该状态的原因很多,注意区别:终止状态 (DeaD) ,线程执行结束的状态,没有任何方法可改变它的状态。 47 【正确答案】 Thread t=new Thread(h) 【试题解析】 本题考查
43、线程的概念。线程是比较抽象的概念,但属于考试重点内容。题目程序的功能是按要求实现输出,通过实现 Runnable接口来创建线程。 Runable接 U的定义为: public interface Runnablevoid run();当实现 Runnable接口的类的对象用来创建线程以后,该线程的启动将使得对象的 run()方法被调用。题目缺少线程创建的语句,因此应该填写: Thread t=new Thread(h),该语句用来以 Hell的实例对象创建 t线程,语句 t.start()使线程启动。 run()方法中用来实现输出 “Hello“字符串,在这里 while(true)语句始终成
44、立,用 break语句来跳出循环。 48 【正确答案】 事件源 【试题解析】 本题考查 Swing的事件处理机制。 Swing的事件处理机制继续沿用了 AWT的事件处理机制,基本的事件处理需要使用 java.awt.event包中的类,但java.swing.event包中也增加了一些新的事件及其监听接口。事件处理机制中仍旧包含 3个角色:事件源、事件和事件处理者 (事件监听程序 )。事件源就是 Swing的各种构件,与之对应的就是事件监听器接口。 49 【正确答案】 In Situationl 【试题解析】 本题考查考生阅读 Java程序的能力。题目程序看似复杂,但流程非常简单。程序的 pu
45、blic类是 throwsException,类中定义了 Proc(int sel)方法。程序入口是 main()方法,使用 try-catch-fmally来捕获 ArithmeticException 和ArrayIndexOutOfBounds Exception 异常,这两个异常是关于算术异常或数组索引越界的异常。执行 Proc(0)时,输出 In Situation0 和 no Exception caught 两条信息;执行 Proc(1)时,输出 In Situation1 和 in Proc finally 两条信息。 整个程序并未发生异常。 50 【正确答案】 Hi!I am
46、 Tom.How are you? 【试题解析】 本题考查类的继承。从 main()方法作为程序入口,首先执行 Test t=new Test(“Tom.“)语句,此时将调用 Test(String s)构造方法,而进入此方法后由 super(s)语句来调用 TT.TT(String s),而执行 this()语句将会调用 TT.TT(),因此,首先由 System.out.print(“Hi!“)语句执行输出。接下来才是 System.out.print(“I am“+s)语句,然后才是 System.out.print(“How are you?“),最后程序结束。要注意区分 this 和 super所对应的类。