1、二级 JAVA 笔试-91 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是( )。(分数:2.00)A.自顶向下B.由底向上C.由内向外D.由整体到局部2.类 Panel 默认的布局管理器是( )。(分数:2.00)A.GridLayoutB.BorderLayoutC.FlowLayoutD.CardLayout3.给出下面的程序代码片段,m 为下列哪个值时将会输出 default? ( )switch (m)case 0: System. out. println
2、(“case 0“);case 1: System. out. println (“case 1“); break;case 2: System. out. println (“case 2“); break;default: System. out. println (“default“);(分数:2.00)A.0B.1C.2D.34.关于 Java 语言的内存回收机制,下列选项中最正确的一项是( )。(分数:2.00)A.Java 程序要求用户必须手工创建一个线程来释放内存B.内存回收线程不能释放内存对象C.内存回收线程负责释放无用内存D.以上说法都不正确5.下列方法中,不属于 Windo
3、wListener 接口的是( )。(分数:2.00)A.windowOpened()B.windowClosed()C.windowActivated()D.mouseDragged()6.在数据流图(DFD)中,带有名字的箭头表示( )。(分数:2.00)A.控制程序的执行顺序B.模块之间的调用关系C.数据的流向D.程序的组成成分7.调用线程的下列方法中,不释放线程中持有的锁的方法是( )。(分数:2.00)A.sleep()B.yield()C.join()D.suspend()8.下面关于 while 和 do-while 循环的说法中,正确的是( )。(分数:2.00)A.与 do-
4、while 语句不同的是,while 语句的循环体至少执行一次B.do-while 语句首先计算终止条件,当条件满足时,才去执行循环体中的语句C.两种循环除了格式不同外,功能完全相同D.以上答案都不正确9.下面程序段的输出结果是( )。public class Test public static void main (String args) int n=10,result=0;for (int i=1;in;i+) result+=i;System.out.println(“result is“+result);(分数:2.00)A.result is 55B.result is 45C.
5、result is 56D.result is 5410.当把一个程序、线程或代码段的输出连接到另一个程序、线程或代码段的输入时,应使用( )流。(分数:2.00)A.FileOutputB.BufferedOutputC.PipedOutputD.DataOutput11.下列关于自动类型转换的说法中,正确的是( )。(分数:2.00)A.操作数 1 是 byte 类型,操作数 2 是 long 类型,结果为 byte 类型B.操作数 1 是 byte 类型,操作数 2 是 long 类型,结果为 long 类型C.操作数 1 是 long 类型,操作数 2 是 byte 类型,结果是 by
6、te 类型D.操作数 1 是 long 类型,操作数 2 是 byte 类型,结果是 long 类型12.下列叙述中,错误的是。( )。(分数:2.00)A.File 类能够存储文件B.File 类能够读写文件C.File 类能够建立文件D.File 类能够获取文件目录信息13.在结构化方法中,软件功能分解属于下列软件开发中的阶段是( )。(分数:2.00)A.详细设计B.需求分析C.总体设计D.编程调试14.JDK 中提供的文档生成器是( )。(分数:2.00)A.java.exeB.javap.exeC.javadoc.exeD.javaprof.exe15.下面叙述中,正确的是( )。(
7、分数:2.00)A.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数C.算法的有穷性是指算法必须能在执行有限个步骤之后终止D.以上三种叙述都不对16.下列程序的输出结果为( )。public class Test public static void main (String args) int i,j,k,a=3,b=2;i=(-a=b+)? -a:+b;j=a+;k=b;System. out. println(“i=“+i+“ ,j =“ +j+“,k =“+k);(分数:2.00)A.i=2, j=1, k=3B.i=1, j=1, k=2C.i
8、=4, j=2, k=4D.i=1, j=1, k=317.下列说法中正确的是( )。(分数:2.00)A.float 类型在运算中会产生溢出的问题,但是只会出现超过 float 类型的最大值,称为上溢。B.float 类型在运算中会产生溢出的问题,但是只会出现超过 float 类型的最小值,称为下溢。C.float 类型在运算中如果出现下溢,则系统将结果设置为 0.0。D.float 类型在运算中如果出现上溢,则系统将结果设置为 0.0。18.Java 语言属于下列哪一种语言?( )(分数:2.00)A.面向机器的语言B.面向对象的语言C.面向过程的语言D.面向操作系统的语言19.为了避免流
9、程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为( )。(分数:2.00)A.PAD 图B.N-S 图C.结构图D.数据流图20.执行下列程序之后,变量 n 的值为( )。public class Test publie static void main (String args) int y=2;int z=3;int n=4;n=n+ -y * z/n;System. out. println (n);(分数:2.00)A.3B.-1C.-12D.-321.对于建立良好的程序设计风格,下面描述中最正确的是( )。(分数:2.00)A.程序应简单、清晰、
10、可读性好B.符号名的命名要符合语法C.充分考虑程序的执行效率D.程序的注释可有可无22.若 a 的值为 3 时,下列程序段被执行后,c 的值是( )。int c=1;if(a0)if(a3)c=2;else c=3;else c=4;(分数:2.00)A.1B.2C.3D.423.下面对于 Java 的继承机制描述错误的是( )(分数:2.00)A.继承是面向对象方法的一个重要基本特征B.声明子类时使用 extends 子句C.Java 支持多重继承D.继承时子类可以添加新的方法和状态24.能够正确创建含有 3 个空串的数组是( )。(分数:2.00)A.String a=new String
11、3; for (int i=0; i3; ai+=null);B.String3 a;C.String a3;D.String a= “ “,“ “,“ “;25.与 Applet 生命周期相关的方法的数量是( )。(分数:2.00)A.4 种B.3 种C.2 种D.5 种26.下列不属于结构化分析常用工具的是( );(分数:2.00)A.数据流图B.数据字典C.判定树D.PAD 图27.下面选项中不是 Java 中整型常量的正确书写格式的是( )。(分数:2.00)A.120B.012C.Ox12D.(10)B28.下列关于线程暂停类方法的叙述,错误的是( )。(分数:2.00)A.slee
12、p()方法使线程暂停,让出 CPU 给低优先级的线程运行B.yield()方法使线程暂停,让出 CPU 使低优先级的线程运行,如果不存在有机会运行的线程,yield()方法将直接返回,线程继续C.join()方法使当前线程暂停,等待某线程类特定对象运行结束D.suspend()挂起的线程不能自动恢复29.随机文件流用( )接口来实现。(分数:2.00)A.DataInput 和 DataOutputB.ObjectInputC.DataInputD.DataOutput30.需求分析阶段的任务是确定( )。(分数:2.00)A.软件开发方法B.软件开发工具C.软件开发费用D.软件系统功能31.
13、如下代码定义了一个类 Test: class Test private int y;Test (int x) y:x; 现在为 Test 类生成一个对象,正确的语句是( )。(分数:2.00)A.Test t = new Test( );B.Test t=new Test(10, 20);C.Test t;D.Test t=new Test(10);32.栈和队列的共同点是( )。(分数:2.00)A.都是先进后出B.都是先进先出C.只允许在端点处插入和删除元素D.没有共同点33.下列类声明正确是的( )。(分数:2.00)_34.非空的循环单链表 head 的尾结点(由 p 所指向),满足(
14、 )。(分数:2.00)A.p-next=NULLB.p=NULLC.p-next=headD.phead35.当子类中的成员变量与父类中的成员变量相同时,( )。(分数:2.00)A.父类中的成员变量隐藏了子类中的变量B.子类中变量无效C.该声明非法D.子类中的成员变量隐藏父类中的变量二、填空题(总题数:15,分数:30.00)36.数据库系统的三级模式分别为 【1】 模式、内部级模式与外部级模式。(分数:2.00)填空项 1:_37.在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:前序遍历、 【2】 遍历和后序遍历。(分数:2.00)填空项 1:_38.结构化程序设计方
15、法的主要原则可以概括为自顶向下、逐步求精、 【3】 和限制使用 goto 语句。(分数:2.00)填空项 1:_39.软件的调试方法主要有:强行排错法、 【4】 和原因排除法。(分数:2.00)填空项 1:_40.在面向对象的程序设计中,用来请求对象执行某一操作或回答某些信息的要求称为 【5】 。(分数:2.00)填空项 1:_41.在 Java 语言中, 【6】 是最基本的元素。(分数:2.00)填空项 1:_42.在求解运算速度要求不高,但是要求程序简洁的问题时,通常采用 【7】 结构。(分数:2.00)填空项 1:_43.用于输入压缩文件格式的 ZipInputStream 类所属包是
16、【8】 。(分数:2.00)填空项 1:_44.当方法有返回值时,必须在该方法体内使用 【9】 语句。(分数:2.00)填空项 1:_45.Java 对象串行化技术,主要是通过 【10】 和 ObjectOutputStream 类来实现的。(分数:2.00)填空项 1:_46.通常使用 【11】 关键字来对对象加锁,从而使得对对象的访问是排他的。(分数:2.00)填空项 1:_47.JscrollPane 面板的滚动条通过移动 【12】 对象实现。(分数:2.00)填空项 1:_48.使用 【13】 API 来访问数据库使得数据库应用程序不依赖于特定的数据库厂家。(分数:2.00)填空项 1
17、:_49.JComponent 是一个抽象类,是大多数 Swing 构件的父类,它定义了所有子类构件的一般方法,JComponent 类继承自 【14】 类,所以凡是此类的构件都可以作为容器使用。(分数:2.00)填空项 1:_50.Java 提供的安全模型称作 【15】 模型。(分数:2.00)填空项 1:_二级 JAVA 笔试-91 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是( )。(分数:2.00)A.自顶向下B.由底向上C.由内向外D.由整体到局部 解析:解析
18、 数据库概念设计的过程中,视图设计一般有三种设计次序,它们是:自顶向下、由底向上、由内向外。2.类 Panel 默认的布局管理器是( )。(分数:2.00)A.GridLayoutB.BorderLayoutC.FlowLayout D.CardLayout解析:解析 FlowLayout 是 Pane 和 Applet 的默认布局管理器,构件在容器中从上到下、从左到右进行放置;BorderLayout 是 Window、Frame 和 Dialog 的默认布局管理器,在 BorderLayout 布局管理器中,构件分成 5 个区域,每个区域只能放置一个构件;GridLayout 使容器中各个
19、构件呈网状布局,平均占据容器的空间;CardLayout 把容器分成许多层,每层只能放置一个构件。3.给出下面的程序代码片段,m 为下列哪个值时将会输出 default? ( )switch (m)case 0: System. out. println (“case 0“);case 1: System. out. println (“case 1“); break;case 2: System. out. println (“case 2“); break;default: System. out. println (“default“);(分数:2.00)A.0B.1C.2D.3 解析:
20、解析 本题主要考查 switch 语句的用法。switch 的判断条件必须是一个 int 型或者是 byte short 和 char 型的值,需要注意的是一个 case 后面一般要接一个 break 语句才能结束,否则将继续执行其他 case 而不进行任何判断,如果没有任何值符合 case 列出的判断,则执行 default 语句, default是可选的,可以没有,如果没有 default 而又没有任何值匹配 case 中列出的值,则 switch 不执行任何语句。本题中,要想输出 default,m 的值不能是 0、1、2,所以选 D。4.关于 Java 语言的内存回收机制,下列选项中最
21、正确的一项是( )。(分数:2.00)A.Java 程序要求用户必须手工创建一个线程来释放内存B.内存回收线程不能释放内存对象C.内存回收线程负责释放无用内存 D.以上说法都不正确解析:解析 Java 语言提供了一个系统级的线程,实现对内存使用的监控、回收闲置不用的内存,从而减轻了程序员对内存管理的负荷。5.下列方法中,不属于 WindowListener 接口的是( )。(分数:2.00)A.windowOpened()B.windowClosed()C.windowActivated()D.mouseDragged() 解析:解析 窗口事件接口 WindowListener 有几个关键方法
22、:public void windowClosing (WindowEvent e)是把退出窗口的语句写在本方法中。public void windowOpened (WindowEvent e)是窗口打开时调用。public void windowClosed (WindowEvent e)是窗口关闭时调用。public void windowlconified (WindowEvent e)是窗口图标化时调用。public void windowDeiconified (WindowEvent e)是窗口非图标化时调用。public void windowActived (WindowEv
23、ent e)是窗口激活时调用。public void windowDeactived (WindowEvent e)是窗口非激活时调用。mouseDragged ()不属于 WindowListener 接口,它属于 MouseMotionListener 接口,用于处理鼠标拖动事件。6.在数据流图(DFD)中,带有名字的箭头表示( )。(分数:2.00)A.控制程序的执行顺序B.模块之间的调用关系C.数据的流向 D.程序的组成成分解析:解析 在数据流图中,用标有名字的箭头表示数据流,它相当于一条管道,并有一级数据 (信息)流经它。数据流可以从加工流向加工,也可以从加工流向文件或从文件流向加工
24、,并且可以从外部实体流向系统或从系统流向外部实体。7.调用线程的下列方法中,不释放线程中持有的锁的方法是( )。(分数:2.00)A.sleep()B.yield()C.join()D.suspend() 解析:解析 suspend()方法只是挂起线程,并不释放线程中持有的锁。8.下面关于 while 和 do-while 循环的说法中,正确的是( )。(分数:2.00)A.与 do-while 语句不同的是,while 语句的循环体至少执行一次B.do-while 语句首先计算终止条件,当条件满足时,才去执行循环体中的语句C.两种循环除了格式不同外,功能完全相同D.以上答案都不正确 解析:解
25、析 do-while 循环属于“直到型”循环,循环体至少执行一次。while 循环先计算终止条件,当条件为真时,才去执行循环体中的语句。两种循环格式不同,功能也不相同。因此选择 D。9.下面程序段的输出结果是( )。public class Test public static void main (String args) int n=10,result=0;for (int i=1;in;i+) result+=i;System.out.println(“result is“+result);(分数:2.00)A.result is 55 B.result is 45C.result is
26、 56D.result is 54解析:解析 for 循环执行时,首先执行初始化操作,然后判断终止条件是否满足,如果满足,则执行循环体中语句,最后执行迭代部分。完成一次循环后,重新判断终止条件。题目中求 1 到 10 的和,主要注意终止条件是 i=n,因此包括 10 在内,所以结果为 55,选择 A。10.当把一个程序、线程或代码段的输出连接到另一个程序、线程或代码段的输入时,应使用( )流。(分数:2.00)A.FileOutputB.BufferedOutputC.PipedOutput D.DataOutput解析:解析 java.io 提供了 PipedInputStream 和 Pi
27、pedOutStream 类作为管道的输入/输出构件,是为了把一个程序、线程或代码段的输出连接到另一个程序、线程或代码段的输入。它们的使用要求管道的输入流与管道的输出流必须事先连接好,管道的输入流作为管道的接收方,而管道的输出流作为发送方。11.下列关于自动类型转换的说法中,正确的是( )。(分数:2.00)A.操作数 1 是 byte 类型,操作数 2 是 long 类型,结果为 byte 类型B.操作数 1 是 byte 类型,操作数 2 是 long 类型,结果为 long 类型 C.操作数 1 是 long 类型,操作数 2 是 byte 类型,结果是 byte 类型D.操作数 1 是
28、 long 类型,操作数 2 是 byte 类型,结果是 long 类型解析:解析 操作数 1 为 byte 类型,操作数 2 为 long 类型,则自动转换为 long 类型,系统自动将短的类型转换为长的类型,但是反过来就不可以。12.下列叙述中,错误的是。( )。(分数:2.00)A.File 类能够存储文件B.File 类能够读写文件 C.File 类能够建立文件D.File 类能够获取文件目录信息解析:解析 Pile 类是 java.io 包中专门处理文件并获取文件有关信息的一个类。File 类不是 InputStream 类或者 OutputStream 类的子类,它不负责数据的输入
29、输出,而是专门用来管理文件和目录。所以选 B。13.在结构化方法中,软件功能分解属于下列软件开发中的阶段是( )。(分数:2.00)A.详细设计B.需求分析C.总体设计 D.编程调试解析:解析 软件开发要经历需求分析、总体设计、详细设计、编程调试的过程。需求分析远离在计算机上的实现,谈不上功能的分解;有了需求分析报告,软件设计员可以思考让软件怎么做,开始总体设计,其间将软件的功能分解,确定模块之间的接,口;有了每个模块功能的分解,再对每个模块进行详细设计;接下来是程序员的任务,编写代码,开始编程调试。14.JDK 中提供的文档生成器是( )。(分数:2.00)A.java.exeB.javap
30、.exeC.javadoc.exe D.javaprof.exe解析:解析 java.exe:Java 解释器,执行字节码程序。javap.exe:Java 类分解器,对.class 文件提供字节代码的反汇编。javaprof.exe:Java 剖析工具,提供解释剖析信息。15.下面叙述中,正确的是( )。(分数:2.00)A.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数C.算法的有穷性是指算法必须能在执行有限个步骤之后终止 D.以上三种叙述都不对解析:解析 算法的设计可以避开具体的计算机程序没计语言,但算法的实现必须借助程序设计语言中提供的数据类型
31、及其算法。数据结构和算法是计算机科学的两个重要支柱,它们是一个不可分割的整体。算法在运行过程中所需辅助存储空间的大小称为算法的空间复杂度。算法的有穷性是指一个算法必须在执行有限的步骤以后结束。16.下列程序的输出结果为( )。public class Test public static void main (String args) int i,j,k,a=3,b=2;i=(-a=b+)? -a:+b;j=a+;k=b;System. out. println(“i=“+i+“ ,j =“ +j+“,k =“+k);(分数:2.00)A.i=2, j=1, k=3B.i=1, j=1, k=
32、2C.i=4, j=2, k=4D.i=1, j=1, k=3 解析:解析 本题的关键是要弄清条件表达式的执行步骤和自增(或自减)运算的求值过程。程序的执行过程如下:首先求出关系表达式-a=b+的值为“真”。注意:-a 是先使当前的 a 值(为 3)减 1 后才参加关系运算;而 b+则是先使当前的 b 值(为 2)参加关系运算后再增 1。由于关系表达式的结果为“真”,因此进行-a 运算。由于 a 的当前值已为 2,所以运算结果的值是1(注意:这时对+b 不进行运算),即整个条件表达式的值为 1,从而得到 i1。这时 a 和 b 的值分别为1 和 3。执行 j=a+和 k=b 后,将分别得到:j
33、=1(把 a 的当前值 1 赋给 j 后,a 再增 1),k=3。17.下列说法中正确的是( )。(分数:2.00)A.float 类型在运算中会产生溢出的问题,但是只会出现超过 float 类型的最大值,称为上溢。B.float 类型在运算中会产生溢出的问题,但是只会出现超过 float 类型的最小值,称为下溢。C.float 类型在运算中如果出现下溢,则系统将结果设置为 0.0。 D.float 类型在运算中如果出现上溢,则系统将结果设置为 0.0。解析:解析 float 和 double 类型都属于实型数据,它们在运算时没有溢出问题,因为系统给出了处理方案:如果下溢,则结果设置为 0.0
34、;如果上溢,则结果设置为Infinity(正负无穷大)。18.Java 语言属于下列哪一种语言?( )(分数:2.00)A.面向机器的语言B.面向对象的语言 C.面向过程的语言D.面向操作系统的语言解析:解析 Java 语言是一种面向对象的语言,与其他面向对象语言相比,Java 利用面向对象技术更彻底,它把所有的 Java 应用和 Applet 都看作对象。19.为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为( )。(分数:2.00)A.PAD 图B.N-S 图 C.结构图D.数据流图解析:解析 常见的过程设计工具有:程序流程图、N-S 图、P
35、AD 图和 HIPO 图。其中,为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为 N-S 图。20.执行下列程序之后,变量 n 的值为( )。public class Test publie static void main (String args) int y=2;int z=3;int n=4;n=n+ -y * z/n;System. out. println (n);(分数:2.00)A.3 B.-1C.-12D.-3解析:解析 本题考查 Java 表达式的运算。main()方法中的前 3 行是基本的赋值语句,第 4 行是算术运算语句,
36、该语句执行的过程是:首先对 y 取负值,得到-2,然后乘以 z 得到-6,再除以 n 得到-1,最后和n 做加法得到 3,从而根据赋值运算将 3 赋值给变量 n。21.对于建立良好的程序设计风格,下面描述中最正确的是( )。(分数:2.00)A.程序应简单、清晰、可读性好 B.符号名的命名要符合语法C.充分考虑程序的执行效率D.程序的注释可有可无解析:解析 要形成良好的程序设计风格,主要应注重和考虑:符号名的命名应具有一定的实际含义,以便于对程序功能的理解;适当的注释能够帮助读者理解程序;程序编写应优先考虑清晰性,除非对效率有特殊要求,程序编写要做到清晰第一、效率第二。22.若 a 的值为 3
37、 时,下列程序段被执行后,c 的值是( )。int c=1;if(a0)if(a3)c=2;else c=3;else c=4;(分数:2.00)A.1B.2C.3 D.4解析:解析 本题主要考查 if-else 的使用,当 if 语句中的条件为真时执行其后的语句,并跳过 else执行下面的语句;当条件为假时执行 else 后的语句。23.下面对于 Java 的继承机制描述错误的是( )(分数:2.00)A.继承是面向对象方法的一个重要基本特征B.声明子类时使用 extends 子句C.Java 支持多重继承 D.继承时子类可以添加新的方法和状态解析:解析 Java 不支持多重继承。继承性是面
38、向对象方法的一个重要特征,它使代码可重用,可降低程序的复杂性。Java 语言中,所有的类都是通过直接或间接地继承 java.lang.Object 而得到的。对一个类的继承是指在现有类(父类)的基础上构建一个新类(子类),子类重用(继承)了父类的方法和状态,同时还可以向新类中增添新的方法和状态。24.能够正确创建含有 3 个空串的数组是( )。(分数:2.00)A.String a=new String3; for (int i=0; i3; ai+=null);B.String3 a;C.String a3;D.String a= “ “,“ “,“ “; 解析:解析 选项 B、C 只是声明
39、了一个数组 a 但是并没有为数组分配内存空间。在选项 A 中,不但声明了一个数组 a,为数组分配内存空间,而且还使用循环语句将每个数组元素赋值为 null。但是需要指出的是,null 与空串是两个不同的概念,null 表示数组元素不指向任何 String 对象。25.与 Applet 生命周期相关的方法的数量是( )。(分数:2.00)A.4 种 B.3 种C.2 种D.5 种解析:解析 Applet 生命周期是指从 Applet 下载到浏览器,到用户退出浏览器、终止 Applet 运行的过程。Applet 生命周期包括 Applet 的创建、运行和消亡几个状态。Applet 类中提供了在生命
40、周期不同阶段响应主要事件的 4 种方法:init ()、start ()、stop ()和 destroy ()。26.下列不属于结构化分析常用工具的是( );(分数:2.00)A.数据流图B.数据字典C.判定树D.PAD 图 解析:解析 结构化分析的常用工具有数据流图、数据字典、判定树和判定表。而 PAD 图是常见的过程设计工具中的图形设计。27.下面选项中不是 Java 中整型常量的正确书写格式的是( )。(分数:2.00)A.120B.012C.Ox12D.(10)B 解析:解析 Java 中整型常量分 3 种书写格式:十进制整数,如 A 选项;八进制整数,以 0 开头,如 B选项;十六
41、进制整数,以 0x 或 0X 开头,如 C 选项。28.下列关于线程暂停类方法的叙述,错误的是( )。(分数:2.00)A.sleep()方法使线程暂停,让出 CPU 给低优先级的线程运行B.yield()方法使线程暂停,让出 CPU 使低优先级的线程运行,如果不存在有机会运行的线程,yield()方法将直接返回,线程继续 C.join()方法使当前线程暂停,等待某线程类特定对象运行结束D.suspend()挂起的线程不能自动恢复解析:解析 sleep()方法的功能是使线程暂停,让出 CPU,使更低优先级的线程运行;yield()方法的功能是使线程暂停,让出 CPU,使同优先级的其他线程运行,
42、如果不存在有机会运行的线程,yield()方法将直接返回,线程继续;join()方法的功能是使当前线程暂停,等待到某线程类对象运行结束;suspend ()方法的功能是挂起线程,挂起后的线程将不能自动恢复,只能在线程中调用 resume ()方法恢复线程的状态。29.随机文件流用( )接口来实现。(分数:2.00)A.DataInput 和 DataOutput B.ObjectInputC.DataInputD.DataOutput解析:解析 文件操作中经常需要 RandomAccessFile 类提供的随机访问文件的功能,它继承自 Object类,用 DataInput 和 DataOut
43、put 接口来实现。30.需求分析阶段的任务是确定( )。(分数:2.00)A.软件开发方法B.软件开发工具C.软件开发费用D.软件系统功能 解析:解析 需求分析是软件定义的最后一个阶段,其基本任务是详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统的工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。选项 A,软件开发方法是在总体设计阶段完成的任务;选项 B,软件开发工具是在实现阶段需完成的任务;选项 C,软件开发费用是在可行性研究阶段需完成的任务。31.如下代码定义了一个类 Test: class Test private int y;Test (int x) y
44、:x; 现在为 Test 类生成一个对象,正确的语句是( )。(分数:2.00)A.Test t = new Test( );B.Test t=new Test(10, 20);C.Test t;D.Test t=new Test(10); 解析:解析 首先,C 选项不正确,Test t;只是定义了一个对象变量,并未生成 Test 的对象;如果程序定义了一个或多个构造方法,在创建对象时,必须用已定义的构造方法来初始化,如果 Java 解释器按参数没有找到相应构造方法,只会报错而不会自动生成空的构造方法。选项 A 不可以使用默认构造方法,选项 B 的参数不符合构造方法的要求,因此,选项 A 和
45、B 也是不正确的。选项 D 正确使用已定义的构造方法,是正确答案。32.栈和队列的共同点是( )。(分数:2.00)A.都是先进后出B.都是先进先出C.只允许在端点处插入和删除元素 D.没有共同点解析:解析 栈和队列都是一种特殊的操作受限的线性表,只允许在端点处进行插入和删除。二者的区别是:栈只允许在表的一端进行插入或删除操作,是一种“后进先出”的线性表;而队列只允许在表的一端进行插入操作,在另一端进行删除操作,是一种“先进先出”的线性表。33.下列类声明正确是的( )。(分数:2.00)_解析:解析 类声明的格式为:修饰符class 类名extends 父类名implements 类实现的接
46、口列表.34.非空的循环单链表 head 的尾结点(由 p 所指向),满足( )。(分数:2.00)A.p-next=NULLB.p=NULLC.p-next=head D.phead解析:解析 循环链表就是将链表的最后一个结点指向链表头结点(或第一个结点),即 p-next=head。35.当子类中的成员变量与父类中的成员变量相同时,( )。(分数:2.00)A.父类中的成员变量隐藏了子类中的变量B.子类中变量无效C.该声明非法D.子类中的成员变量隐藏父类中的变量 解析:解析 Java 中,类是分层次的,当子类的成员变量与父类的成员变量名字相同时,子类的成员变量会隐藏父类的成员变量,当子类的
47、成员方法与父类的成员方法名字、参数列表、返回值类型都相同时,子类的方法是父类的方法的重写。二、填空题(总题数:15,分数:30.00)36.数据库系统的三级模式分别为 【1】 模式、内部级模式与外部级模式。(分数:2.00)填空项 1:_ (正确答案:概念 或 概念级)解析:解析 数据库系统在其内部具有三级模式及二级映射,三级模式分别是概念级模式、内部级模式和外部级模式。概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户(应用)的公共数据视图。内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法,如数据存储的文件结构、索引、集簇及 hash 等存取方式与存取路径,内模式的物理性主要体现在操作系统及文件级上,它还未深入到设备级上(如磁盘及磁盘操作)。外模式也称子模式或用户模式,它是用户的数据视图,也就是用户所见到的数据模式,它由概念模式推导而出。37.在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:前序遍历、 【2】 遍历和后序遍历。(分数:2.00)填空项 1:_ (正确答案:中序)解析:解析 在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:前序遍历、中序遍历和后序遍历。前序遍历是指首先访问根