1、二级 JAVA 笔试-121 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.下列关于 Java 语言中线程的叙述中,正确的是(分数:2.00)A.线程是由代码、数据、内核状态和一组寄存器组成B.线程间的数据是不共享的C.用户只能通过创建 Thread 类的实例或定义,创建 Thread 子类的实例建立和控制自己的线程D.因多线程并发执行而引起的执行顺序的不确定性可能造成执行结果的不确定2.下列关于 Applet 的安全限制的叙述中,错误的是(分数:2.00)A.通常情况下,禁止 Applet 读、写本地文件系统B.通常情况下,禁止 App
2、let 读 Applet 源主机之外的任何主机建立网络连接C.通常情况下,禁止 Applet 读取系统信息D.通常情况下,禁止 Applet 加载本地库或方法3.下列关于 Java 语言特点的叙述中,错误的是(分数:2.00)A.Java 是面向过程的编程语言B.Java 支持分布式计算C.Java 是跨平台的编程语言D.Java 支持多线程4.下列事件监听器中,无法对 TextField 对象进行事件监听和处理的是(分数:2.00)A.ActionListenerB.cuslistenerC.MouseMotionListenerD.ChangeListener5.阅读下面程序public
3、class OperatorsAndExpressions void equalsMethodl() String s1=new String(“how are you“);String s2=new String(“how are you“);System.out.println(s1=s2);public static void main(String args) OperatorsAndExpressions OperAndExp=new OperatorsAndExpressions();/用于复合类型数据的“=”运算符OperAndExp.equalsMethodl();程序运行的结
4、果是(分数:2.00)A.=B.trueC.falseD.equal6.在长度为 64 的有序线性表中进行顺序查找,最坏情况下需要比较的次数为(分数:2.00)A.63B.64C.6D.77.Java 的核心包中,提供编程应用的基本类的包是(分数:2.00)A.Java.langB.Java.utilC.Java.appletD.Java.rmi8.阅读下面代码if(x=0)System.out.println(“冠军“);else if(x-3)System.out.println(“亚军“);elseSystem.out.println(“季军“);若要求打印字符串“季军”,则变量 X 的
5、取值范围是(分数:2.00)A.x=0row=10;row+) for(int column=1;column=5;colunm+) if(row=5)break stop;output+=“*“:output+=“/n“;output+=“/nLoops terminated normally“:JOptionPane.showMessageDialog(null,output,“用一个标志测试 break 语句“,JOptionPane.INFORMATION_MESSAGE);System.exit(0);程序运行的结果是(分数:2.00)A.窗口中有 5 行*B.窗口中有 5 行*C.
6、窗口中有 4 行*D.窗口中有 6 行*25.可以使当前同级线程重新获得运行机会的方法是(分数:2.00)A.sleep()B.join()C.yield()D.interrupt()26.数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和(分数:2.00)A.编码设计B.测试阶段C.运行阶段D.物理设计27.从工程管理角度,软件设计一般分为两步完成,它们是(分数:2.00)A.概要设计与详细设计B.数据设计与接口设计C.软件结构设计与数据设计D.过程设计与数据设计28.在读取二进制数据文件的记录时,为了提高效率常常使用一种辅助类(分数:2.00)A.InputStreamB.Fileln
7、putStreamC.StringBufferD.BufferedReader29.下列关于构造方法的叙述中,错误的是(分数:2.00)A.Java 语言规定构造方法名与类名必须相同B.Java 语言规定构造方法没有返回值,但不用 void 声明C.Java 语言规定构造方法不可以重载D.Java 语言规定构造方法只能通过 new 自动调用30.每个 Java 小应用程序必须定义为(分数:2.00)A.Applet 类或 JApplet 类的子类B.JFrame 类的子类C.Frame 的子类D.Window 的子类31.下列选项中不属于软件生命周期开发阶段任务的是(分数:2.00)A.软件测
8、试B.概要设计C.软件维护D.详细设计32.下列叙述中正确的是(分数:2.00)A.一个算法的空间复杂度大,则其时间复杂度也必定大B.一个算法的空间复杂度大,则其时间复杂度必定小C.一个算法的时间复杂度大,则其空间复杂度必定小D.上述三种说法都不对33.下列选项中不符合良好程序设计风格的是(分数:2.00)A.源程序要文档化B.数据说明的次序要规范化C.避免滥用 goto 语句D.模块设计要保证高耦合、高内聚34.Swing 的选项面板是(分数:2.00)A.JTabbedPaneB.JLayeredpaneC.JScrollPaneD.JSplitPane35.下列关于 Java 对 imp
9、ort 语句规定的叙述中,错误的是(分数:2.00)A.在 Java 程序中 import 语句可以有多个B.在 Java 程序中 import 语句可以没有C.在 Java 程序中 import 语句必须有一个D.在 Java 程序中 import 语句必须引入在所有类定义之前二、填空题(总题数:15,分数:30.00)36.下列软件系统结构图的宽度为_。(分数:2.00)填空项 1:_37. 1 的任务是诊断和改正程序中的错误。(分数:2.00)填空项 1:_38.一个关系表的行称为 1。(分数:2.00)填空项 1:_39.按“先进后出”原则组织根据的数据结构是 1。(分数:2.00)填
10、空项 1:_40.数据结构分为线性结构和非线性结构,带链的队列属于 1。(分数:2.00)填空项 1:_41.若想在程序中使用 JLabel 类,则该程序可以使用 import 1JLabel;语句引入 JLabel 类。(分数:2.00)填空项 1:_42.在 Java 中,3.14156D 表示的是 1 数。(分数:2.00)填空项 1:_43.阅读下面代码public class Test2 public static void main(String args) System.out.println(5/2);其执行结果是_。(分数:2.00)填空项 1:_44.阅读下面代码int x
11、=3;while (x9)x+=2;x+:while 语句成功执行的次数是_。(分数:2.00)填空项 1:_45.Java 不直接支持多继承,但可以通过 1 实现多继承。(分数:2.00)填空项 1:_46.在下面程序的下画线处,填入适当的语句使程序能正确执行并输出异常栈信息。public class ThrowableException public static void main(String args) try throw new Throwable(“这里是本人定义的异常“);catch(Throwable e) System.out.println(“Caught Throwab
12、le“);System.out.println(“e.getMessage():“+e.getMessage();System.out.println(“e.toString():“+e.toString();System.out.println(“e.printStackTrace():“);_(分数:2.00)填空项 1:_47.在 java.io 包中有某个类同时实现了 DataInput 接口和 DataOutput 接口,这个类是 1。(分数:2.00)填空项 1:_48.在 Java 程序中,主线程一般具有 1 优先级。(分数:2.00)填空项 1:_49.当实现 Runnable
13、 接口时,要实现的方法是 1。(分数:2.00)填空项 1:_50.mouseDragged1 方法是 MouseMotionListener 接口中的抽象方法,该方法的参数是 2 类。(分数:2.00)填空项 1:_二级 JAVA 笔试-121 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.下列关于 Java 语言中线程的叙述中,正确的是(分数:2.00)A.线程是由代码、数据、内核状态和一组寄存器组成B.线程间的数据是不共享的C.用户只能通过创建 Thread 类的实例或定义,创建 Thread 子类的实例建立和控制自己的线程D.因多线
14、程并发执行而引起的执行顺序的不确定性可能造成执行结果的不确定 解析:解析 线程不包含进程地址空间中的代码和数据。数据可以被多个线程所共享,也可以不共享。在多线程的程序中,当多个线程并发执行时,虽然各个线程中语句的执行顺序是确定的,但线程的相对执行顺序是不确定的。这种线程运行的不确定性将导致执行结果的不确定性。2.下列关于 Applet 的安全限制的叙述中,错误的是(分数:2.00)A.通常情况下,禁止 Applet 读、写本地文件系统B.通常情况下,禁止 Applet 读 Applet 源主机之外的任何主机建立网络连接C.通常情况下,禁止 Applet 读取系统信息 D.通常情况下,禁止 Ap
15、plet 加载本地库或方法解析:解析 为了保护本地主机,对 Applet 做了如下安全限制:Applet 不能运行任何本地可运行程序,禁止加载本地库或方法,禁止读、写本地计算机的文件系统,禁止向提供 Applet 之外的任何主机建立网络连接,不能读取某些系统信息。只是不能读取某些系统信息,所以答案为选项 C。3.下列关于 Java 语言特点的叙述中,错误的是(分数:2.00)A.Java 是面向过程的编程语言 B.Java 支持分布式计算C.Java 是跨平台的编程语言D.Java 支持多线程解析:解析 Java 语言是一种面向对象的语言,与其他面向对象语言相比,Java 利用面向对象技术更彻
16、底,它把所有的 Java 应用和 Applet 都看作对象。Java 语言具有如下特点:简单易学,利用面向对象技术,分布式计算,健壮性,安全性,跨平台性,可移植性,解释执行,高性能,多线程,动态性。4.下列事件监听器中,无法对 TextField 对象进行事件监听和处理的是(分数:2.00)A.ActionListenerB.cuslistenerC.MouseMotionListenerD.ChangeListener 解析:解析 在单行文本输入区(Textfield)构件上可能发生的事件包括 FocusEvent 焦点事件,所对应的事件监听器是 FocusListener;ActionEv
17、ent 动作事件,所对应的事件监听器是ActionListener;MouseEvent 鼠标事件,所对应的事件监听器是 MouseMotionListener;不包括ChangeListener 这样的监听器。5.阅读下面程序public class OperatorsAndExpressions void equalsMethodl() String s1=new String(“how are you“);String s2=new String(“how are you“);System.out.println(s1=s2);public static void main(String
18、 args) OperatorsAndExpressions OperAndExp=new OperatorsAndExpressions();/用于复合类型数据的“=”运算符OperAndExp.equalsMethodl();程序运行的结果是(分数:2.00)A.=B.trueC.false D.equal解析:解析 本程序是显示表达式 s1=s2 的值。字符串对象 s1 和 s2 是复合数据类型,因而表达式s1=s2 所比较的是 s1 和 s2 是否是同一个对象。本题中 s1 和 s2 虽然有相同的值“how are you“,但它们是两个不同的对象,所以本题的结果是 false。若要对
19、两个对象的值进行比较,则可以调用 equals()方法。6.在长度为 64 的有序线性表中进行顺序查找,最坏情况下需要比较的次数为(分数:2.00)A.63B.64 C.6D.7解析:解析 在长度为 64 的有序线性表中,其中的 64 个数据元素是按照从大到小或从小到大的顺序排列有序的。在这样的线性表中进行顺序查找,最坏的情况就是查找的数据元素不在线性表中或位于线性表的最后。按照线性表的顺序查找算法,首先用被查找的数据和线性表的第一个数据元素进行比较,若相等,则查找成功,否则继续进行比较,即和线性表的第二个数据元素进行比较。同样,若相等,则查找成功,否则继续进行比较。以此类推,直到在线性表中查
20、找到该数据或查找到线性表的最后一个元素,算法才结束。因此,在长度为 64 的有序线性表中进行顺序查找,最坏的情况下需要比较 64 次。因此,本题的正确答案为 B。7.Java 的核心包中,提供编程应用的基本类的包是(分数:2.00)A.Java.lang B.Java.utilC.Java.appletD.Java.rmi解析:解析 Java 核心包共有 12 个。Java.lang 包封装所有编程应用的基本类,如Object、Class、System、Integer、Thread 等。Java.util 包提供实用程序类和集合类,如系统特性定义和使用、日期方法类、集合 Collection、
21、Map、List、Arrays 等常用工具类。Java.applet 包为 Applet提供执行需要的所有类,主要是访问 Applet 内容的通信类。Java.rmi 包提供程序远程方法调用所需的类。8.阅读下面代码if(x=0)System.out.println(“冠军“);else if(x-3)System.out.println(“亚军“);elseSystem.out.println(“季军“);若要求打印字符串“季军”,则变量 X 的取值范围是(分数:2.00)A.x=0row=10;row+) for(int column=1;column=5;colunm+) if(row=
22、5)break stop;output+=“*“:output+=“/n“;output+=“/nLoops terminated normally“:JOptionPane.showMessageDialog(null,output,“用一个标志测试 break 语句“,JOptionPane.INFORMATION_MESSAGE);System.exit(0);程序运行的结果是(分数:2.00)A.窗口中有 5 行*B.窗口中有 5 行*C.窗口中有 4 行* D.窗口中有 6 行*解析:解析 本程序的功能是向屏幕输出“*”。题目中用了一个两层嵌套的 for 循环。内层循环控制每行输出的
23、“*”个数,从初值 1 到 5 共 5 个。外层循环控制行数,for 的循环初值为 1,终值为 10,但是当 row 为 5 时,跳出了 stop 所指定的代码块。所以只执行了 4 行。25.可以使当前同级线程重新获得运行机会的方法是(分数:2.00)A.sleep()B.join()C.yield() D.interrupt()解析:解析 Thread 提供了如下的基本线程控制方法:sleep(),线程暂停,让出 CPU,使低优先级的线程运行。yield(),线程暂停,让出 CPU,使同优先级的其他线程运行。如果不存在有机会运行的线程,yield()方法将直接返回,线程继续;join(),当
24、前线程暂停,等待线程类对象运行结束。interrupt(),如果一个线程 t 调用 sleep()、join()、wait()等方法被阻塞,则 t.interrupt()方法将使 t 的中断状态被清除,中断 t 的阻塞状态,并且 t 将接收到 InterruptedException 异常。26.数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和(分数:2.00)A.编码设计B.测试阶段C.运行阶段D.物理设计 解析:解析 数据库的生命周期可以分为两个阶段:一是数据库设计阶段;二是数据库实现阶段。数据库的设计阶段又分为四个子阶段,即需求分析、概念设计、逻辑设计和物理设计。因此,本题的正确答
25、案是 D。27.从工程管理角度,软件设计一般分为两步完成,它们是(分数:2.00)A.概要设计与详细设计 B.数据设计与接口设计C.软件结构设计与数据设计D.过程设计与数据设计解析:解析 从工程管理的角度,软件设计可分为概要设计和详细设计两大步骤。概要设计是根据需求确定软件和数据的总体框架;详细设计是将其进一步精化成软件的算法或表示为数据的结构。而在技术上,概要设计和详细设计又由若干活动组成,包括总体结构设计、数据设计和过程设计。因此,本题的正确答案是 A。28.在读取二进制数据文件的记录时,为了提高效率常常使用一种辅助类(分数:2.00)A.InputStreamB.FilelnputStr
26、eamC.StringBuffer D.BufferedReader解析:解析 StringBuffer 类是一个表示可变长度字符串的类,在读取文件时并不知道所读取字符的具体长度,因此为 StringBuffer 类分配的内存会自动扩展而容纳新增的字符,这就提供了读取效率。所以,StringBuffer 是一个可以提高读取文件效率的辅助类。29.下列关于构造方法的叙述中,错误的是(分数:2.00)A.Java 语言规定构造方法名与类名必须相同B.Java 语言规定构造方法没有返回值,但不用 void 声明C.Java 语言规定构造方法不可以重载 D.Java 语言规定构造方法只能通过 new
27、自动调用解析:解析 构造方法是类中的一种特殊方法,是为对象初始化操作编写的方法,用它来定义对象的初始状态。构造方法名必须与类名相同,它没有返回值,用户不能直接调用它,只能通过 new 自动调用。构造方法具有下列特点:因为构造方法与类名必须相同,所以方法首字母小写规则对它不适用。构造方法是给对象赋初值,所以没有返回值,但不要 void 来声明。构造方法不能被程序调用。构造方法可由编程人员在类中定义,默认时由 Java 语言自动生成。构造方法可以重载实现不同的初始化方法,调用时按参数决定调用哪个方法。30.每个 Java 小应用程序必须定义为(分数:2.00)A.Applet 类或 JApplet
28、 类的子类 B.JFrame 类的子类C.Frame 的子类D.Window 的子类解析:解析 Applet 类定义小应用程序与其运行环境之间的一个接口;JApplet 是 Applet 类的扩展,它继承 Applet 的方法和执行机制,同时也增加了对 Swing 构件的支持。每个 Java 小应用程序都必须是Applet 类或 JApplet 类的子类。31.下列选项中不属于软件生命周期开发阶段任务的是(分数:2.00)A.软件测试B.概要设计C.软件维护 D.详细设计解析:解析 软件生命周期由软件定义、软件开发和软件维护三个阶段组成,每个时期又进一步划分为若干个阶段。软件定义时期的基本任务
29、是确定软件系统的工程需求。软件定义可分为软件系统的可行性研究和需求分析两个阶段。软件开发时期是具体设计和实现在前一时期定义的软件,它通常由下面五个阶段组成:概要设计、详细设计、编写代码、组装测试和确认测试。软件维护时期的主要任务是使软件持久地满足用户的需要,即当软件在使用过程中发现错误时应加以改正;当环境改变时应修改软件,以适应新的环境;当用户有新要求时应及时改进软件,以满足用户的新要求。根据上述对软件生命周期的介绍,可知选项 c 中的软件维护不是软件生命周期开发阶段的任务。因此,本题的正确答案是 C。32.下列叙述中正确的是(分数:2.00)A.一个算法的空间复杂度大,则其时间复杂度也必定大
30、B.一个算法的空间复杂度大,则其时间复杂度必定小C.一个算法的时间复杂度大,则其空间复杂度必定小D.上述三种说法都不对 解析:解析 时间复杂度是指一个算法执行时间的相对度量;空间复杂度是指算法在运行过程中临时占用所需存储空间大小的度量。人们都希望选择一个既省存储空间又省执行时间的算法。然而,有时为了加快算法的运行速度,不得不增加空间开销;有时为了能有效地存储算法和数据,又不得不牺牲运行时间。时间和空间的效率往往是一对矛盾,很难做到两全。但是,这不适用于所有的情况,也就是说时间复杂度和空间复杂度之间虽然经常矛盾,但是两者不存在必然的联系。因此,选项 A、B、C 的说法都是错误的。故本题的正确答案
31、是 D。33.下列选项中不符合良好程序设计风格的是(分数:2.00)A.源程序要文档化B.数据说明的次序要规范化C.避免滥用 goto 语句D.模块设计要保证高耦合、高内聚 解析:解析 编程风格是在不影响性能的前提下有效地编排和组织程序,以提高可读性和可维护性。更直接地说,风格就意味着要按照规则进行编程。这些规则包括:(1) 程序文档化。就是程序文档包含恰当的标识符,适当的注解和程序的视觉组织等。(2) 数据说明。出于阅读理解和维护的需要,最好使模块前的说明语句次序规范化。此外,为方便查找,在每个说明语句的说明符后,数据名应按照字典顺序排列。(3) 功能模块化。即把源程序代码按照功能划分为低耦
32、合、高内聚的模块。(4) 注意 goto 语句的使用。合理使用 goto 语句可以提高代码的运行效率,但 goto 语句的使用会破坏程序的结构特性。因此,除非确实需要,否则最好不使用 goto 语句。本题的正确答案是 D。34.Swing 的选项面板是(分数:2.00)A.JTabbedPane B.JLayeredpaneC.JScrollPaneD.JSplitPane解析:解析 在 Swing 的容器面板中,选项面板是 JTabbedPane,每个选项下面都可以显示一个构件,提供一组可供用户选择的带有标签或图标的选项。Swing 提供两种分层面板:JLayeredPane 和JDeskt
33、opPane。35.下列关于 Java 对 import 语句规定的叙述中,错误的是(分数:2.00)A.在 Java 程序中 import 语句可以有多个B.在 Java 程序中 import 语句可以没有C.在 Java 程序中 import 语句必须有一个 D.在 Java 程序中 import 语句必须引入在所有类定义之前解析:解析 Java 程序中使用 import 语句导入一个包中的类。在一个 Java 源程序中可以有 0 条或多条import 语句,但必须在所有类定义之前引入标准类。二、填空题(总题数:15,分数:30.00)36.下列软件系统结构图的宽度为_。(分数:2.00)
34、填空项 1:_ (正确答案:3)解析:解析 题目中的图形是倒置的树状结构,这是用层次图表示的软件结构。结构图中同一层次模块的最大模块个数称为结构的宽度,它表示控制的总分布。根据上述结构图宽度的定义,从图中可以看出,第二层的模块个数最多,即为 3。因此,这个系统结构图的宽度就为 3。37. 1 的任务是诊断和改正程序中的错误。(分数:2.00)填空项 1:_ (正确答案:调试(阶段)或程序调试(阶段)或软件调试(阶段)或 Debug(阶段))解析:解析 软件测试的目的是发现程序中的错误,而调试的目的是确定程序中错误的位置和引起错误的原因,并加以改正。换句话说,调试的目的就是诊断和改正程序中的错误
35、。调试不是测试,但是它总是发生在测试之后。因此,本题的正确答案是调试(阶段)或程序调试(阶段)或软件调试(阶段)或 Debug(阶段)38.一个关系表的行称为 1。(分数:2.00)填空项 1:_ (正确答案:记录或元组)解析:解析 关系是关系数据模型的核心。关系可以用一个表来直观地表示,表的每一列表示关系的一个属性,每一行表示一个元组或记录。因此,本题的正确答案是元组或记录。39.按“先进后出”原则组织根据的数据结构是 1。(分数:2.00)填空项 1:_ (正确答案:栈或 Stack)解析:解析 栈和队列是两种特殊的线性表,其特殊性在于对它们的操作只能在表的端点进行。栈中的数据按照“后进先
36、出”的原则进行组织,而队列中的数据是按照“先进先出”的原则进行组织。因此,本题的正确答案是栈(或 Stack)。40.数据结构分为线性结构和非线性结构,带链的队列属于 1。(分数:2.00)填空项 1:_ (正确答案:线性结构)解析:解析 数据结构分为线性结构和非线性结构,其中队列是属于线性结构。队列有两种存储结构,一种是顺序存储结构,称为顺序队列;另一种是链式存储结构,称为链队列。题目中所说的带链的队列就是指链队列。无论队列采取哪种存储结构,其本质还是队列,还属于一种线性结构。因此,本题的正确答案是线性结构。41.若想在程序中使用 JLabel 类,则该程序可以使用 import 1JLab
37、el;语句引入 JLabel 类。(分数:2.00)填空项 1:_ (正确答案:javax.swing)解析:解析 在 javax.swing 包中,定义了两种类型的构件:顶层容器(JFrame、JApplet、JDialog 和JWindow)和轻量级构件。其中就含有不可编辑信息的显示 JLabel 等。所以需要引入javax.swing.JLabel。42.在 Java 中,3.14156D 表示的是 1 数。(分数:2.00)填空项 1:_ (正确答案:双精度浮点)解析:解析 浮点数据分为 float 和 double 两种类型。如果数字的末尾加 F 或 f,则是 float 类型;如果
38、数字末尾加 D 或 d,则是 double 类型。注意,如果数字后面没有任何字母,则默认数据类型为 double型。43.阅读下面代码public class Test2 public static void main(String args) System.out.println(5/2);其执行结果是_。(分数:2.00)填空项 1:_ (正确答案:2)解析:解析 对二元运算,如果操作数全为整型,那么只要其中有一个为 long 型,则表达式结果也为long 型;其他情况下,即使两个操作数全是 byte 型或 short 型,表达式结果也为 int 型。本程序中,常量 5 和 2 均为整型,
39、所以结果也为 int 型,因此结果为 2。44.阅读下面代码int x=3;while (x9)x+=2;x+:while 语句成功执行的次数是_。(分数:2.00)填空项 1:_ (正确答案:3)解析:解析 本程序中,循环初始条件是 x=3,判断条件是 x9,执行的语句是 x+=2。所以当x=3,x=5,x=7 分别执行三次,x=9 时不再满足条件,退出循环。45.Java 不直接支持多继承,但可以通过 1 实现多继承。(分数:2.00)填空项 1:_ (正确答案:接口)解析:解析 接口是抽象类,其用途胜于抽象类。因为,接口中只包含抽象方法和常量,不包括任何实现,所以与存储空间没有任何关系。
40、将多个接口合并,就可以很容易地实现多重继承。46.在下面程序的下画线处,填入适当的语句使程序能正确执行并输出异常栈信息。public class ThrowableException public static void main(String args) try throw new Throwable(“这里是本人定义的异常“);catch(Throwable e) System.out.println(“Caught Throwable“);System.out.println(“e.getMessage():“+e.getMessage();System.out.println(“e.t
41、oString():“+e.toString();System.out.println(“e.printStackTrace():“);_(分数:2.00)填空项 1:_ (正确答案:e.printStackTrace();)解析:解析 本程序比较简单,就是生成一个异常,然后执行 catch 中的语句。其中,前面的输出语句都是输出异常事件的基本信息,但是题目中还要求输出异常栈信息,并且在程序中也输出了提示。异常对象的 printStackTrace()方法就是用来输出异常栈信息。47.在 java.io 包中有某个类同时实现了 DataInput 接口和 DataOutput 接口,这个类是
42、1。(分数:2.00)填空项 1:_ (正确答案:RandomAccessFile)解析:解析 文件操作中经常需要进行随机访问,Java 中的 RandomAccessFile 类提供了随机访问文件的功能,它继承 Object 类,用 DataInput 和 DataOutput 接口来实现。48.在 Java 程序中,主线程一般具有 1 优先级。(分数:2.00)填空项 1:_ (正确答案:普通)解析:解析 Java 中的线程是有优先级的。Thread 类有 3 个有关线程优先级的静态常量:MIN_PRIORITY最小优先级,通常为 1;MAX_PRIORITY最大优先级,通常为 10;NO
43、RM_PRIORITY普通优先级,默认值为 5。一般情况下,主线程具有普通优先级。49.当实现 Runnable 接口时,要实现的方法是 1。(分数:2.00)填空项 1:_ (正确答案:run-|_|-)解析:解析 创建线程有两种方法:实现 java.lang.Runnable 接 El 和继承 Thread 类并重写 run-|_|-方法。Runnable 接口中只定义了一个抽象方法 run-|_|-,因此要实现 run-|_|-方法。50.mouseDragged1 方法是 MouseMotionListener 接口中的抽象方法,该方法的参数是 2 类。(分数:2.00)填空项 1:_ (正确答案:MouseEvent)解析:解析 mouseDragged-|_|-方法是 MouseMotionListener 接口中的抽象方法,其原型为 void mouseDragged(MouseEvent e),所以参数为 MouseEvent 类。