1、国家计算机二级(Java)84 及答案解析(总分:100.00,做题时间:120 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:35,分数:70.00)1.下列哪个不是 Java 虚拟机的执行过程的特点?(分数:2.00)A.2B.3C.4D.52.计算机中的流是( )。(分数:2.00)A.添加文件B.运行文件C.重命名文件D.连编文件3.下列是一个 Java 应用程序,输出结果是( )。 public class Testmm public static void main(String args) for(char c=a;c=d;c+) if(c=c)break;
2、System.out.print(c); (分数:2.00)A.abB.abcC.abdD.abcd4.关于多线程,下列哪个说法不正确? (分数:2.00)A.100B.0C.AD.程序有错误5.下列程序的输出结果是( )。 class Demo void test( ) Systeme.out.pnnt(“NO“); void test(int i) System.out.print(a); void test(int a,int b) System.out.print(a+b); class Test public static void main(String args ) Demo d
3、e=new Demo( ); de.test( ); de.test(5); de.test(6,8); (分数:2.00)A.No 5 6 8B.5 6 8 NoC.No 5 14D.8 6 No 56.下列程序的执行结果是( )。 public class Testhh public static void main(String args ) Strings1=new String(“I am boy“); Strings2=new String(“I am boy“);System.out.println(s1.equals(s2); (分数:2.00)A.trueB.falseC.I
4、 am boyD.都不正确7.给出下列的不完整的方法,则下列的哪个声明可以被加入行完成此方法的声明? success = connect( ); if (success = = - 1 ) throw new TimedoutException( ) (分数:2.00)A.22.下列哪个标识符不是合法的标识符?(分数:2.00)A.PicturePrint “Microsoft“B.Print “Microsoft“C.PrinterPrint “Microsoft“D.DebugPrint“Microsoft“23.在 Java 中,数组是当成什么来处理?(分数:2.00)A.20 20B.
5、30 20C.30 40D.15 1524.给出下列有关 List 的表达式,则哪个选项的叙述是对的? List 1 = new List(6,true); (分数:2.00)A.No 5 6 8B.5 6 8 NoC.No 5 14D.8 6 No 525.在深度为 7 的满二叉树中,叶子结点的个数为【 】(分数:2.00)A.32B.31C.64D.6326.下列常见的系统定义的异常中,哪个是数组越界异常?(分数:2.00)A.打开 Visual Basic 主窗体的“文件”菜单,执行其中的“退出”命令B.按快捷键 Alt+Q 退出C.单击 Visual Basic 主窗体右上角的“关闭”
6、按钮D.按快捷键 Alt+E 退出27.下列程序的输出结果是( )。 class Father int mn; Father(int a,int B) m=a; n=b void show ( ) Systemoutprintln(“m and n:“+m+“ “+n); class Son extends Father int p; Son (int a,int b,int C) super(a,B) ; p=c; void show()supurshow( ); Systemoutprintln(“p:“+p); class Test public static void main (St
7、ring args ) Son s:new Son(6,7,8); sshow( ); (分数:2.00)A.TrueB.FalseC.-1D.128.下列的哪个赋值语句是正确的?(分数:2.00)A.char a=12;B.int a=12.0;C.int a=12.0f;D.int a=(int)12.0;29.输入输出在计算机系统中起到了采集数据和提供数据处理结果的双重作用,它是以中央处理器(含控制器和内存)为此,以网络及外部设备为彼的双向数据传输机制。凡是从外部设备流向中央处理器的数据流,称为什么;反之称为什么? (分数:2.00)A.出流,入流B.输出流,输入流C.输入流,输出流D.
8、入流,出流30.下列 Java 常见事件类中哪个是鼠标事件类?(分数:2.00)A.接口所有的方法都是抽象的B.接口所有的方法一定都是 public 属性的C.用于定义接口的关键字是 implementsD.接口是 Java 中的特殊类,包含静态变量和抽象方法31.下列程序的执行结果是( )。 public class Testhh public static void main(String args ) Strings1=new String(“I am boy“); Strings2=new String(“I am boy“); System.out.println(s1.equals
9、(s2); (分数:2.00)A.副教授$“教授“B.3+5#2*4C.计算机“计算机世界“ D.2004/05/01=CTOD(“04/01/03“)解析:字符函数中,LEN( )函数测试字符串长度;OCCURS( )函数计算子串出现次数;AT( )函数求子串位置,其返回值均为数值型数据;LIKE( )函数比较两个字符串是否匹配,返回的是逻辑型数据。32.下列哪个是用来实现客户和服务者之间的通信? (分数:2.00)A.用于指定一个字段值的范围,指定的范围之间用 And 连接B.用于指定一个字段值的列表,列表中的任一值都可与查询的字段相匹配 C.用于指定一个字段为空D.用于指定一个字段为非空
10、解析:C+语言函数中定义的变量都是属于这个函数的局部变量。33.下列标识符(名字)命名原则中,正确的是【 】(分数:2.00)A.类名的首字母小写B.变量和方法名的首字母大写C.接口名的首字母小写D.常量完全大写 解析:Java 命名的基本原则包括如下几条:、$不作为变量名、方法名的开头;变量名、方法名首单词小写,其余单词只有首字母大写;接口名、类名首单词第一个字母大写;常量完全大写。根据上述命名规则,选项 D 的说法是正确的。 34.下列叙述中,错误的是【 】(分数:2.00)A.JavaApplication 与 Applet 所用编译命令相B.通常情况下 JavaApplication
11、只能有一个 main()方法C.JavaApplet 必须有 HTML 文件才能运行D.JavaApplet 程序的.class 文件可用 java 命令运行 解析:本题考查的是 Java 中的 Applet 以及 Applt 与 Application 的区别。选项 A, Applet 的运行方式和 Java Application 不同,但是 Applet 在运行前也必须被编译为类文件,这点和 Application 是一样的。因此,它们都用 javac 进行编译。因此,选项 A 的说法是正确的。选项 B,在每个应用程序 Application中可以包含多个方法,但应用程序都是以 main
12、()方法为入口点执行,因此必须有且只能有一个 main 方法。故选项 B 的说法是正确的。选项 C,Applet 是能够嵌入 HTML 语言中,并能够在浏览器中运行的类。Applet 的运行环境是 Web 浏览器,所以必须建立 HTML 文件,告诉浏览器如何加载与运行 Applet。所以,选项 C 的说法是正确的。选项 D,根据选项 C 的分析,Applet 是不能直接通过 Java 命令行启动运行的。因此,选项 D 的说法是错误的。35.在 Java 中,能实现多重继承效果的方式是【 】(分数:2.00)A.内部类B.适配器C.接口 D.同步解析:本题考查 Java 中多重继承的概念。首先要
13、区分选项中各个概念。内部类是在一个类中的内部嵌套定义的类,主要用来生成事件适配器。适配器定义一个包装类,包装有不兼容接口的对象。这个包装类指的就是适配器(Adapter),它包装的对象就是适配者(Adaptee),适配器提供客户类需要的接口。接口是一种只含有抽象方法或常量的一种特殊的抽象类,因为接口不包括任何实现,所以与存储空间没有任何关系,将多个接口合并,即多重继承就可以很容易实现,选项 C 正确。同步主要用在多线程程序设计中。二、填空题(每空 2 分,共 30 分)(总题数:15,分数:30.00)36.写出下列程序的执行结果是 1。 已知:a转换成整数对应的是 97。 程序如下: cla
14、ss Testl public static void main(String args) char a=d; int b=a; float c=a; double d=a; System.out.println(“a=“+a); System.out.println(“b=“+b); System.out.println(“c=“+c); System.out.println(“d=“+d); (分数:2.00)填空项 1:_ (正确答案:a=d b=100 c=1000 d=1000)解析:char 型在计算机内部是以 int 型存储的,所以知道“a”在计算机中对应的 int 型数据的值是
15、97,那么很容易推算出“d”的对应值是 100。自动类型的转换,注意 float 和 double 型小数点后的零。37.Java 中方法的参数传递是 1 调用,方法不能改变参数值,但可以改变变量值,两个对象之间的参数字段不能相互交换。(分数:2.00)填空项 1:_ (正确答案:传值)解析:本题考查 Java 中方法的参数传递。Java 中方法的参数传递是传值调用,而不是地址调用。方法不能改变参数值,但可以改变变量值,两个对象之间的参数字段不能互相交换。参数传递是 Java 中一个重要概念,注意理解。38.抽象、封装、 1 和多态是 Java 语言的四大特性。(分数:2.00)填空项 1:_
16、 (正确答案:继承)解析:作为面向对象的编程语言,必须具有的特点是继承性。39.阻塞状态根据产生的原因可分为 1、等待阻塞和其他阻塞。(分数:2.00)填空项 1:_ (正确答案:对象锁阻塞)解析:阻塞状态根据产生的原因可分为对象锁阻塞、等待阻塞、其他阻塞。40.字符串分为两大类,一类是字符串常量,使用 String 类的对象表示;另一类是字符串变量,使用 1类的对象表示。(分数:2.00)填空项 1:_ (正确答案:StringBuffer)解析:在 Java 中 String 类只支持只读字符串,适用于字符串常量;StringBuffer 类支持可修改字符串,适用于字符串变量。41.表达式
17、是由操作数和 1 按一定的语法形式组成的符号序列。(分数:2.00)填空项 1:_ (正确答案:运算符)解析:最简单的表达式是一个常量或一个变量,该表达式的值就是该常量或变量的值。表达式的值还可以作为其他运算的操作数,形成复杂的表达式。42.布尔型数据除局部变量外,默认的值是 1。(分数:2.00)填空项 1:_ (正确答案:False)解析:布尔型数据在计算机中占内存 1 位,除局部变量外,默认的值是 false。43.CRC 技术的全称是 1。(分数:2.00)填空项 1:_ (正确答案:Cyclic Redundancy Check(循环冗余校验))解析:Cyclic Redundanc
18、y Check(循环冗余校验)技术用在数字传输领域,以传输的可 靠性为目的,进行差错控制。44.在 java.io 包中有某个类同时实现了 DataInput 接口和 DataOutput 接口,这个类是 1。 (分数:2.00)填空项 1:_ (正确答案:RandomAceessFile)解析:文件操作中经常需要的是随机访问,Java 中的随机文件流 RandomAccessFile 类提供了随机访问文件的功能,它继承了 Object 类,并同时实现了 DataInput 和 DataOutput 两个接口。因此,本题的正确答案是 RandomAccessFile。45.构造方法是类中的一种
19、特殊方法,用它来定义对象的 1。(分数:2.00)填空项 1:_ (正确答案:初始状态)解析:构造方法是类中的一种特殊方法,是为对象初始化操作编写的方法,用它来 定义对象的初始状态。构造方法名必须与类名相同,它没有返回值,用户不能直接调用 它,只能通过 new 自动调用。46.抽象类不能 1。(分数:2.00)填空项 1:_ (正确答案:实例化)解析:在 Java 语言中,用 abstract 修饰符定义的类称为抽象类,在其中的方法称为抽 象方法。抽象类必须被继承,抽象方法必须被重写,抽象类不能实例化。47. 1 是 Java 的特殊应用程序,它嵌入到 HTML 中,发布到互联网上。(分数:2
20、.00)填空项 1:_ (正确答案:Applet)解析:知道 Java 程序分为 Java application 和 Java Applet 两类,其中 Java Applet 是 Java 的特殊应用程序,它嵌入到 html 中,发布到互连网上。编写和执行 Java Applet 的步骤应该清楚。 48.下列软件系统结构图,的宽度为 1 (分数:2.00)填空项 1:_ (正确答案:3)解析:题目中的图形是倒置的树状结构,这是用层次图表示的软件结构。结构图中同一层次模块的最大模块个数称为结构的宽度,它表示控制的总分布。根据上述结构图宽度的定义,从图中可以看出,第二层的模块个数最多,即为 3
21、。因此,这个系统结构图的宽度就为 3。49.数据结构分为逻辑结构和存储结构,循环队列属于 1 结构。(分数:2.00)填空项 1:_ (正确答案:存储或物理或存储结构或物理结构)解析: 数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构(也称数据的物理结构)。所谓循环队列,就是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间,供队列循环使用。可知,循环队列应当是物理结构。50.能将显示空间分成很多层的布局管理器是 1。(分数:2.00)填空项 1:_ (正确答案:CardLayout 或卡片布局)解析:布局管理器分为下面几类: (1)FlowLayout 布局管理器:
22、构件在容器中的放置规律是从上到下,从左到右进行放置,如果当前行已经放置不下该构件,则放置到下一行的最左边。 (2)BorderLayout 布局管理器:构件在容器中的放置规律是把容器分为东、南、西、北、中五个区域,每个区域只能放一个构件。 (3)GridLayout 布局管理器:构件在容器中的放置规律是各个构件呈网格状布局,从上到下,从左到右平均占据容器的空间。 (4)CardLayout 布局管理器 c 构件布局规律是把容器分成许多层,每层的显示空间占据整个容器的大小,但是每层只允许放置一个组件,当然每层都可以利用 Panel 来实现复杂的用户界面。 因此,本题的正确答案是 CardLayout 或卡片布局管理器。