1、二级 JAVA笔试-341 及答案解析(总分:84.00,做题时间:90 分钟)一、选择题(总题数:35,分数:59.00)1.下列关于 Java简单数据类型的说法中,不正确的是( )。A) short类型的数据占有 16位的存储空间B) float类型的数据占有 32位的存储空间C) boolean类型的数据占有 1位的存储空间D) long类型的数据占有 32位的存储空间(分数:1.00)A.B.C.D.2.下列关于构造方法的叙述中,错误的是( )。AJava 语言规定构造方法名与类名必须相同BJava 语言规定构造方法没有返回值,但不用 void声明CJava 语言规定构造方法不可以重载
2、DJava 语言规定构造方法只能通过 new自动调用(分数:2.00)A.B.C.D.3.下列说法正确的是A) 共享数据的所有访问都必须作为临界区B) 用 synchronized保护的共享数据可以是共有的C) Java中对象加锁不具有可重入性D) 对象锁不能返还(分数:1.00)A.B.C.D.4.下列程序执行之后,输出的结果是_。 public class ex4public static void main(String args)int j=0;for(int i=3;i0;i-)j+=i;int x=2;while(xj)x+=1;System.out,print(x);A. 355
3、5 B. 35556666 C. 33453456 D. 345(分数:2.00)A.B.C.D.5.resume()方法恢复哪些线程的执行A) 通过调用 stop()方法而停止的线程B) 通过调用 sleep()方法而停止运行的线程C) 通过调用 wait()方法而停止运行的线程D) 通过调用 suspend()方法而停止运行的线程(分数:1.00)A.B.C.D.6.在创建 Applet应用程序时,需要用户考虑的问题是( )。A) 窗口如何创建 B) 绘制的图形在窗口中的位置C) 程序的框架 D) 事件处理(分数:2.00)A.B.C.D.7.软件需求分析阶段的工作,可以分为四个方面:需求
4、获取、需求分析、编写需求规格说明书以及( )。A) 阶段性报告 B) 需求评审 C) 总结 D) A、B、C 都不正确(分数:2.00)A.B.C.D.8.下面哪些语句在编译时不会出现错误或警告? ( )A) float f=1.3; B) byte b=257:C) boolean b=null; D) int i=10;(分数:2.00)A.B.C.D.9.下面说法中正确的是( )。A) Java程序不需编译也可直接执行B) Java程序经过编译后的字节代码仍然是 ASCII文件C) Java程序经过编译后的字节代码是二进制文件,可以在操作系统上直接执行D) Java程序经过编译后的字节代
5、码是二进制文件,可以在 Java虚拟机上执行(分数:2.00)A.B.C.D.10.数据流图中带有箭头的线段表示的是A) 控制流 B) 事件驱动 C) 模块调用 D) 数据流(分数:2.00)A.B.C.D.11.设有以下语句,对 a数组元素的引用中(其中 0i10),不正确的是( )。int a10=0,1,2,3,4,5,6,7,8,9,*p=a;A) ap-a B) *(import java.awt.*;public class MyApplet extends AppletAA s;public void int()s = new AA(“Hello!“, “I love JAVA.
6、“);public void paint(Graphics g)g.drawString(s.toString(), 30, 50);class AAString s1;String s2;AA(String str1, String str2)s1 = str1;s2 - str2;public String toString()return s1 + s2;运行后,窗口上将会出现什么,选择一个正确答案_。AHello! BI love JAVACHello! I love JAVA D什么都没有(分数:2.00)A.B.C.D.13.下列叙述中错误的是A) 一种数据的逻辑结构可以有多种存储
7、结构B) 数据的存储结构与数据处理的效率无关 C) 数据的存储结构与数据处理的效率密切相关D) 数据的存储结构在计算机中所占的空间不一定是连续的(分数:2.00)A.B.C.D.14.设有下列二叉树:(分数:2.00)A.B.C.D.15.下列选项成员变量声明正确的是A) public protected final int i;B) abstract class F1.C) private double height;D) double weight(分数:1.00)A.B.C.D.16.在给数值类型赋值时,如数字后没有字母,计算机默认为( )类型。Ainteger 类型 Bfloat 类型
8、Cdouble 类 D字符类型(分数:1.00)A.B.C.D.17.与 Applet生命周期相关的方法的数量是( )。A) 4种 B) 3 种 C) 2 种 D) 5 种(分数:2.00)A.B.C.D.18.Thread类中能运行线程体的方法是( )。Astairt() Bresume()Cinit() Drun()(分数:2.00)A.B.C.D.19.下列创建一个标识有“关闭”按钮的语句是_。A) TextField b=new TextField(“关闭”); B) TextArea b=new TextArea(“关闭”);C) Button b=new Button(“关闭”);
9、 D) Checkbox b=new CheckBox(“关闭”);(分数:2.00)A.B.C.D.20.在单链表中,增加头结点的目的是 ( )A) 方便运算的实现B) 使单链表至少有一个结点C) 标识表结点中首结点的位置D) 说明单链表是线性表的链式存储实现(分数:1.00)A.B.C.D.21.在执行完此程序段后,i,j 值为int i=1,j=10;doif(+ij-)continue;while(i5);A) i=6 and j=5 B) i=5 and j=5C) i=6 and j=4 D) i=5 and j=6(分数:2.00)A.B.C.D.22.在软件测试设计中,软件测试
10、的主要目的是A)实验性运行软件B)证明软件正确C)找出软件中全部错误D)发现软件错误而执行程序(分数:1.00)A.B.C.D.23.结构化程序所要求的基本结构不包括A) 顺序结构 B) GOTO 跳转C) 选择(分支)结构 D) 重复(循环)结构(分数:2.00)A.B.C.D.24.switch语句( )。A) 有的可以用 if-else if结构实现 B) 都不可以用 if-else if结构实现C) 都可以用 if-else if结构实现 D) 大部分可以用 if-else if结构实现(分数:2.00)A.B.C.D.25.“+”运算符的操作数个数是A) 1个 B) 2 个 C) 3
11、 个 D) 4 个(分数:2.00)A.B.C.D.26.下列说法正确的是( )。A共享数据的所有访问都必须作为临界区B用 synchronized保护的共享数据可以是共有的CJava 中对象加锁不具有可重入性D对象锁不能返还(分数:2.00)A.B.C.D.27.有以下程序:void main()int a=1,b;for(b=1;b10;b+)if(a=8) break;if(a%2=1) a+=5;continue;a-=3:printf(“%d/n“,b);程序运行后输出的结果是( )。A3 B4C5 D6(分数:2.00)A.B.C.D.28.以下程序输出结果为( )。class t
12、est 2public static void main(String args)int n = 7;n=3;n=nn=2;System.out.println(n);A) 0 B) -1 C) 14 D) 64(分数:1.00)A.B.C.D.29.Java语言的 API文档是( )。AJava 归档工具 BJava 状态序列化文件CJava 源代码 D编程工具(分数:2.00)A.B.C.D.30.下面语句会产生编译错误的是A) float F=1024.0F; B) double D=1024.0;C) byte B=1024; D) char C=1024;(分数:2.00)A.B.C
13、.D.31.下面的表达式中正确的是 ( )AString s=“你好”;int i=3;s+=i;BString s=“你好”;int i=3;if(i=s)s+=i;CString s=“你好”;int i=3;s=i+s;DString s=“你好”;int i=3; s=i+;(分数:1.00)A.B.C.D.32.有三个关系 R、S 和 T如下:RST(分数:2.00)A.B.C.D.33.所有 Swing组件都实现了_接口,提供对可存取性的支持,使得辅助功能如屏幕阅读器能够十分方便地从 Swing组件中得到信息。AMVC BB2B CAccessible DB2C(分数:2.00)A
14、.B.C.D.34.下列对 Java语言的叙述中,错误的是A) Java虚拟机解释执行字节码B) JDK的库文件目录是 binC) Java的类是对具有相同行为对象的一种抽象D) Java中的垃圾回收机制是一个系统级的线程(分数:2.00)A.B.C.D.35.用整数 10创建一个 Integer类的对象,下列各语句中能完成此功能的是( )。A) Integer i=new Integer(10);B) Integer i=10;C) int i=10;D) Integer i=Integer(10);(分数:1.00)A.B.C.D.二、填空题(总题数:15,分数:25.00)36.Java
15、的线程调度策略是基于 1 的抢占式。(分数:2.00)填空项 1:_37. 1是一种信息隐蔽技术,目的在于将对象的使用者和对象的设计者分开。(分数:1.00)填空项 1:_38.ByteArrayInputStream以 1 作为输入流。(分数:2.00)填空项 1:_39.在 Java语言中,用 1 修饰符定义的类为抽象类。(分数:2.00)填空项 1:_40.位运算符用来对二进制位进行操作,操作数只能为 1 和字符型数据。(分数:1.00)填空项 1:_41.Java的线程调度策略是一种基于优先级的 1 式调度。(分数:2.00)填空项 1:_42.在面向对象的程序设计中,用来请求对象执行
16、某一操作或回答某些信息的要求称为 1。(分数:2.00)填空项 1:_43.算法复杂度主要包括时间复杂度和 1 复杂度。(分数:1.00)填空项 1:_44.请阅读下列程序代码,然后将程序的执行结果补充完整。程序代码:public class throwsExceptionstatic void Proc(intsel)throws Arithmetic Exception,Array Index Out Of Bounds ExceptionSystem.out.println(“InSituation“+sel);if(sel=0)System.out.println(“noExcepti
17、on caught“);return;else if(sel=1)int iArray=newint4;iArray-1=3;public static void main(String args)tryProc(0);Proc(1);catch(Array Index Out Of Bounds Exception e)System.out.println(“Catch“+e);finallySystem.out.println(“inProcfinally“);执行结果:In Situation 0no Exception caughtin Proc finally(分数:2.00)填空项
18、 1:_45.算法的复杂度主要包括 1 复杂度和空间复杂度。(分数:1.00)填空项 1:_46.在下面程序的空白处,填上适当的内容。Import java.io. *:import java.util. *;class BufferTest public static void main(String args)throws IOExeeption FileOutputStream unbuf=new FileoutputStream(“test.one“);BufferedOutputStream bur=new _ (new FileOutputStream(“test.two“);Sy
19、stem.out.println(“write file unbuffered:“+time(unbuf)+“ms“);System.out.println(“write file buffered:“+time(buf)+“ms“);static int time(OutputStream os)throws IOException Date then=new Date();for(int i=0;i50000;i+)os.write(1);os.close();return(int)(new Date().getTime()-then.getTime();(分数:2.00)填空项 1:_4
20、7.数据型包括简单数据类型和复合数据类型。简单数据类型又包括数值类型、 1、布尔类型三大类。(分数:2.00)填空项 1:_48.Applet生命周期方法有 init1、 2、stop3 和 destroy4。(分数:2.00)填空项 1:_49.字符常量是用单撇号括起来的一个字符,用双撇号括起来的是 1。(分数:1.00)填空项 1:_以下程序中,函数 fun的功能是计算 x2-2x+6,主函数中将调用 fun函数计算,请填空。y1=(x+8)2-2(x+8)+6y2=sin2(x)-2sin(x)+6#include “math.h“double fun(double x) return(
21、_);main()( double x,y1,y2;printf(“Enter x:“); scanf(“%1f“,x);yl=fun(8+x);y2=fun(_);printf(“y1 =%1f,y2=%1f/n“,y1,y2);(分数:2.00)填空项 1:_填空项 1:_二级 JAVA笔试-341 答案解析(总分:84.00,做题时间:90 分钟)一、选择题(总题数:35,分数:59.00)1.下列关于 Java简单数据类型的说法中,不正确的是( )。A) short类型的数据占有 16位的存储空间B) float类型的数据占有 32位的存储空间C) boolean类型的数据占有 1位的
22、存储空间D) long类型的数据占有 32位的存储空间(分数:1.00)A.B.C.D. 解析:解析 long 类型的数据占有 64位的存储空间,在编写程序时要注意,对于 long类型常量在书写时,应该在数字后面加上 1或 L。2.下列关于构造方法的叙述中,错误的是( )。AJava 语言规定构造方法名与类名必须相同BJava 语言规定构造方法没有返回值,但不用 void声明CJava 语言规定构造方法不可以重载DJava 语言规定构造方法只能通过 new自动调用(分数:2.00)A.B.C. D.解析:解析 本题考查的是构造方法的使用。Java 语言中,构造方法是一种特殊的方法,是为对象初始
23、化操作编写的方法,用它来定义对象的初始状态。Java 中的每个类都有构造方法,它也是由方法名、参数和方法体组成的。构造方法有如下特点:构造方法的名字必须与类名相同。构造方法不返回任何数据,但不用 void来声明。用户不能直接调用构造方法,必须通过关键字 new自动调用。构造方法可由用户在类中定义,默认时由 Java语言自动生成。但它是个空方法,变量被赋予该数据类型的默认值。在构造方法实现中,可以进行方法重载,即定义多个构造方法。重载构造方法的目的是使类具有不同的初始值,为类对象的初始化提供方便。根据上述构造方法的特点可知,本题选项 C的说法是错误的。3.下列说法正确的是A) 共享数据的所有访问
24、都必须作为临界区B) 用 synchronized保护的共享数据可以是共有的C) Java中对象加锁不具有可重入性D) 对象锁不能返还(分数:1.00)A. B.C.D.解析:解析 本题考查对象加锁的相关概念。对于对象加锁的使用有些注意事项。对象的锁在某些情况下可以由持有线程返还,比如当 synchronized语句块执行完成后;当在 synchronized 语句块中出现异常;当持有锁的线程调用该对象的 wait()方法,由此可见选项 D说法错误。共享数据的所有访问都必须作为临界区,使用 synchronized进行加锁控制,选项 A说法正确。用 synchronized保护的共享数据必须是
25、私有的,选项 B说法错误。Java 中对象加锁具有可重入性,选项 C说法错误。4.下列程序执行之后,输出的结果是_。 public class ex4public static void main(String args)int j=0;for(int i=3;i0;i-)j+=i;int x=2;while(xj)x+=1;System.out,print(x);A. 3555 B. 35556666 C. 33453456 D. 345(分数:2.00)A.B.C. D.解析:5.resume()方法恢复哪些线程的执行A) 通过调用 stop()方法而停止的线程B) 通过调用 sleep(
26、)方法而停止运行的线程C) 通过调用 wait()方法而停止运行的线程D) 通过调用 suspend()方法而停止运行的线程(分数:1.00)A.B.C.D. 解析:解析 本题考查 resume()方法的使用。在 Thread的 API文档中的说明是该方法恢复被挂起(suspendeD) 的线程。该方法首先调用该线程的无参的 checkAccess()方法,这可能在当前线程上抛出SecurityException异常,如果该线程是活着的(alive)但被挂起(suspenD) ,它被恢复并继续它的执行进程。6.在创建 Applet应用程序时,需要用户考虑的问题是( )。A) 窗口如何创建 B)
27、 绘制的图形在窗口中的位置C) 程序的框架 D) 事件处理(分数:2.00)A.B. C.D.解析:解析 Applet 类是所有 Applet应用程序的基础,该类为 Applet应用提供了程序框架,在创建Applet应用程序时,只需要在框架中填入相应的方法,至于窗口如何创建、事件处理如何进行都不需要用户考虑。用户只需要把注意力集中在如何在窗口中进行用户界面设计等问题上。7.软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及( )。A) 阶段性报告 B) 需求评审 C) 总结 D) A、B、C 都不正确(分数:2.00)A.B. C.D.解析:解析 软件需求分析
28、阶段的工作包括需求获取、需求分析、编写需求规格说明书以及需求评审四个方面。8.下面哪些语句在编译时不会出现错误或警告? ( )A) float f=1.3; B) byte b=257:C) boolean b=null; D) int i=10;(分数:2.00)A.B.C.D. 解析:解析 该题考查对基本数据类型定义和初始化的理解。基本数据类型在定义时都可以对其赋初值。选项 A是错误的,与 C语言不同,在 Java语言中,对于实型数值,默认的类犁是 double 型的,若要把它赋给 float变量,必须对它进行类型转换,赋初值的话,必须在实型数后面加上 f或 F字母。给浮点型变量定义并且赋
29、初值:选项 B是错误的,因为 byte是 8个字符的,它所表示的范围是-128127,而右边的 257 已经超出其所能表示的范围了;选项 C是错误的,对于布尔型变量,它的值只有 true与 false 两种,系统默认的是 false。没有 null这种取值;选项 D是正确的,对整型变量定义并且赋初值。故本题答案是 D。9.下面说法中正确的是( )。A) Java程序不需编译也可直接执行B) Java程序经过编译后的字节代码仍然是 ASCII文件C) Java程序经过编译后的字节代码是二进制文件,可以在操作系统上直接执行D) Java程序经过编译后的字节代码是二进制文件,可以在 Java虚拟机上
30、执行(分数:2.00)A.B.C.D. 解析:解析 Java 语言的执行模式是半编译和半解释型,未经编译的 Java程序不能直接执行。 Java 程序编过编译后的字节代码是二进制文件,但不能直接在操作系统上执行,它可看作虚拟机的机器码,由Java虚拟机解释执行。10.数据流图中带有箭头的线段表示的是A) 控制流 B) 事件驱动 C) 模块调用 D) 数据流(分数:2.00)A.B.C.D. 解析:解析 在数据流图中,矩形表示数据的外部实体,圆角矩形表示变换数据的处理逻辑,双横线表示数据的存储,箭头表示数据流。11.设有以下语句,对 a数组元素的引用中(其中 0i10),不正确的是( )。int
31、 a10=0,1,2,3,4,5,6,7,8,9,*p=a;A) ap-a B) *(import java.awt.*;public class MyApplet extends AppletAA s;public void int()s = new AA(“Hello!“, “I love JAVA.“);public void paint(Graphics g)g.drawString(s.toString(), 30, 50);class AAString s1;String s2;AA(String str1, String str2)s1 = str1;s2 - str2;publ
32、ic String toString()return s1 + s2;运行后,窗口上将会出现什么,选择一个正确答案_。AHello! BI love JAVACHello! I love JAVA D什么都没有(分数:2.00)A.B.C. D.解析:13.下列叙述中错误的是A) 一种数据的逻辑结构可以有多种存储结构B) 数据的存储结构与数据处理的效率无关 C) 数据的存储结构与数据处理的效率密切相关D) 数据的存储结构在计算机中所占的空间不一定是连续的(分数:2.00)A.B. C.D.解析:解析 一种数据的逻辑结构根据需要可以表示成多种存储结构,常用的存储结构有顺序、链接、索引等,选项 A
33、和选项 D正确。采用不同的存储结构,其数据处理的效率不同,因此,在进行数据处理时,选择合适的存储结构是很重要的,选项 C正确,选项 B错误,B 应为所选。14.设有下列二叉树:(分数:2.00)A.B. C.D.解析:解析 二叉树的遍历分为先序,中序、后序三种不同方式。本题要求中序遍历,其遍历顺序应该为:中序遍历左子树访问根结点中序遍历右子树。按照定义,中序遍历序列是 DBEAFC,故答案为B。15.下列选项成员变量声明正确的是A) public protected final int i;B) abstract class F1.C) private double height;D) dou
34、ble weight(分数:1.00)A.B.C. D.解析:解析 本题考查对成员变量的声明。成贝变量的声明格式位:修饰符 type变量名;其中 type可以是 java语言中的任意数据类型,而修饰符可以是 public、protected, private,static,final,transient,volatile 等。选项 A错误,成员变量不能同时声明成 public 和protected。选项 B是类的声明格式,并不是成员变量的声明。成员变量声明应以“;”结尾,选项 D错误。选项 C声明了一个私有的 double型成员变量,为正确答案。16.在给数值类型赋值时,如数字后没有字母,计算
35、机默认为( )类型。Ainteger 类型 Bfloat 类型Cdouble 类 D字符类型(分数:1.00)A.B.C. D.解析:17.与 Applet生命周期相关的方法的数量是( )。A) 4种 B) 3 种 C) 2 种 D) 5 种(分数:2.00)A. B.C.D.解析:解析 Applet 生命周期是指从 Applet下载到浏览器,到用户退出浏览器、终止 Applet运行的过程。Applet 生命周期包括 Applet的创建、运行和消亡几个状态。Applet 类中提供了在生命周期不同阶段响应主要事件的 4种方法:init ()、start ()、stop ()和 destroy (
36、)。18.Thread类中能运行线程体的方法是( )。Astairt() Bresume()Cinit() Drun()(分数:2.00)A.B.C.D. 解析:19.下列创建一个标识有“关闭”按钮的语句是_。A) TextField b=new TextField(“关闭”); B) TextArea b=new TextArea(“关闭”);C) Button b=new Button(“关闭”); D) Checkbox b=new CheckBox(“关闭”);(分数:2.00)A.B.C. D.解析:解析 按钮(Button)是最常用的一个构件,其构造方法是 Button b=new
37、 Button(“Quit“);单行文本输入区(TextField)只能显示一行;文本输入区(TextArea)可以显示多行多列文本。复选框(Checkbox)提供简单的“on/off”开关,旁边显示文本标签。所以本题的正确答案是选项 C。20.在单链表中,增加头结点的目的是 ( )A) 方便运算的实现B) 使单链表至少有一个结点C) 标识表结点中首结点的位置D) 说明单链表是线性表的链式存储实现(分数:1.00)A. B.C.D.解析:解析 头结点不仅标识了表中首结点的位置,而且根据单链表(包含头结点)的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点目的是为了便于运算的实现。21.
38、在执行完此程序段后,i,j 值为int i=1,j=10;doif(+ij-)continue;while(i5);A) i=6 and j=5 B) i=5 and j=5C) i=6 and j=4 D) i=5 and j=6(分数:2.00)A.B.C.D. 解析:解析 本题考查考生对自增自减运算符的理解。+op 和 op+,表示对操作数 op加 1,其中+op表示先对 op加 1然后再取值,而 op+表示先取值,然后再对 op进行加 1。-op 和 op-也是一样。当进行到 i=5时退出循环,此时 j为 6。22.在软件测试设计中,软件测试的主要目的是A)实验性运行软件B)证明软件正
39、确C)找出软件中全部错误D)发现软件错误而执行程序(分数:1.00)A.B.C.D. 解析:解析:使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。软件测试是为了发现错误而执行程序的过程。测试要以查找错误为中心,而不是为了演示软件的正确功能。23.结构化程序所要求的基本结构不包括A) 顺序结构 B) GOTO 跳转C) 选择(分支)结构 D) 重复(循环)结构(分数:2.00)A.B. C.D.解析:24.switch语句( )。A) 有的可以用 if-else if结构实现 B) 都不可以用 if-else if结构实现C)
40、 都可以用 if-else if结构实现 D) 大部分可以用 if-else if结构实现(分数:2.00)A.B.C. D.解析:解析 switch 语句的功能都可以用 if-else if结构实现,不过有时候 if-else if结构会比较复杂而已,用 switch使结构清晰。当比较的数据类型为实型时,不能用 switch,只能用 if-else if。25.“+”运算符的操作数个数是A) 1个 B) 2 个 C) 3 个 D) 4 个(分数:2.00)A. B.C.D.解析:解析 本题考查 Java运算符的概念。这是重点内容,只需要细心即可。程序涉及的数据处理,都是通过运算符和表达式来操
41、作,是程序设计的基础,因此务必掌握。按照操作数的数目划分,运算符可以分为:一元运算符:+,-,+,-; 二元运算符:+,-,;三元运算符:?:。所以本题正确答案是选项 A。简单点儿说就是有几个操作数就是几元运算符;反过来,是几元运算符就有几个操作数。26.下列说法正确的是( )。A共享数据的所有访问都必须作为临界区B用 synchronized保护的共享数据可以是共有的CJava 中对象加锁不具有可重入性D对象锁不能返还(分数:2.00)A. B.C.D.解析:解析 本题考查对象加锁的相关概念。对于对象加锁的使用有些注意事项。对象的锁在某些情况下可以由持有线程返还,比如当 synchroniz
42、ed语句块执行完成后:当在 synchronized语句块中出现异常;当持有锁的线程调用该对象的 wait()方法,由此可见选项 D说法错误。共享数据的所有访问都必须作为临界区,使用 synchronized进行加锁控制,选项 A况法正确。用 synchronized保护的共享数据必须是私有的,选项 B说法错误。Java 中对象加锁具有可重入性,选项 C错误。27.有以下程序:void main()int a=1,b;for(b=1;b10;b+)if(a=8) break;if(a%2=1) a+=5;continue;a-=3:printf(“%d/n“,b);程序运行后输出的结果是( )
43、。A3 B4C5 D6(分数:2.00)A.B. C.D.解析:28.以下程序输出结果为( )。class test 2public static void main(String args)int n = 7;n=3;n=nn=2;System.out.println(n);A) 0 B) -1 C) 14 D) 64(分数:1.00)A.B.C. D.解析:解析 第 1个赋值语句使得 n的值为 7, 7 的二进制形式为 00000111,第 2个赋值语句可写为n=n3,n 左移 3位的结果为 00111000,即第 3个赋值语句的运算顺序为 (ns+=i;BString s=“你好”;in
44、t i=3;if(i=s)s+=i;CString s=“你好”;int i=3;s=i+s;DString s=“你好”;int i=3; s=i+;(分数:1.00)A. B.C.D.解析:32.有三个关系 R、S 和 T如下:RST(分数:2.00)A. B.C.D.解析:33.所有 Swing组件都实现了_接口,提供对可存取性的支持,使得辅助功能如屏幕阅读器能够十分方便地从 Swing组件中得到信息。AMVC BB2B CAccessible DB2C(分数:2.00)A.B.C. D.解析:34.下列对 Java语言的叙述中,错误的是A) Java虚拟机解释执行字节码B) JDK的库
45、文件目录是 binC) Java的类是对具有相同行为对象的一种抽象D) Java中的垃圾回收机制是一个系统级的线程(分数:2.00)A.B. C.D.解析:解析 JDK 目录中,bin 目录下存放编译器、解释器和许多工具;demo 目录下有各种演示例子;lib目录下都是库文件;jre 目录是 Java程序运行环境的根目录;include 目录是 win32子目录,都是本地方法文件。所以答案 B错误。35.用整数 10创建一个 Integer类的对象,下列各语句中能完成此功能的是( )。A) Integer i=new Integer(10);B) Integer i=10;C) int i=1
46、0;D) Integer i=Integer(10);(分数:1.00)A. B.C.D.解析:解析 Integer 类是 int类型的包装类,其创建和使用方法和一般的类相似,因此答案为 A。二、填空题(总题数:15,分数:25.00)36.Java的线程调度策略是基于 1 的抢占式。(分数:2.00)填空项 1:_ (正确答案:优先级)解析:解析 这种现成调度策略可以简单描述为:Java 选择优先级高的线程运行,并且如果某线程在运行过程中遇到有更高优先级的线程可运行,则当前优先级的线程被优先级高的线程抢占运行。37. 1是一种信息隐蔽技术,目的在于将对象的使用者和对象的设计者分开。(分数:1
47、.00)填空项 1:_ (正确答案:封装)解析:38.ByteArrayInputStream以 1 作为输入流。(分数:2.00)填空项 1:_ (正确答案:字节数组)解析:解析 这个类用于在内存中读取数据,它是抽象类 InputStream类的子类。使用这个类可以使来自内存的数据看上去类似于来自文件。39.在 Java语言中,用 1 修饰符定义的类为抽象类。(分数:2.00)填空项 1:_ (正确答案:abstract)解析:解析 抽象类是指明不能实例化的类,用修饰符 abstract定义。40.位运算符用来对二进制位进行操作,操作数只能为 1 和字符型数据。(分数:1.00)填空项 1:_ (正确答案:整型)解析:41.Java的线程调度策略是一种基于优先级的 1 式调度。(分数:2.00)填空项 1:_ (正确答案:抢先)解析:解析 在单个 CPU上以某种顺序运行多个线程,称为线程的调度。Java 的线程调度策略是一种基于优先级的抢先式调度。这种调度策略的含义是:Java 基于线程的优先级选择高优先级的线程进行运行。42.在面向对象的程序设计中,用来请求对象执行某一操作或回答某些信息的要求称为 1。(分数:2.00)填空