1、国家二级( JAVA)笔试模拟试卷 132及答案与解析 1 数据结构作为计算机的一门学科,主要研究数据的逻辑结构、对各种数据结构进行的运算,以及 ( )。 ( A)数据的存储结构 ( B)计算方法 ( C)数据映像 ( D)逻辑存储 2 串的长度是 ( )。 ( A)串中不同字符的个数 ( B)串中不同字母的个数 ( C)串中所含字符的个数且字符个数大于零 ( D)串中所含字符的个数 3 在计算机中,算法是指 ( )。 ( A)加工方法 ( B)解题方案的准确而完整的描述 ( C)排序方法 ( D) 查询方法 4 以下不属于对象的基本特点的是 ( )。 ( A)分类性 ( B)多态性 ( C)
2、继承性 ( D)封装性 5 开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作( )。 ( A)软件投机 ( B)软件危机 ( C)软件工程 ( D)软件产生 6 下面不属于软件设计原则的是 ( )。 ( A)抽象 ( B)模块化 ( C)自底向上 ( D)信息隐蔽 7 下列工具中属于需求分析常用工具的是 ( )。 ( A) PAD ( B) PFD ( C) N-S ( D) DFD 8 下列 SQL语句中,用于修改表结构的是 ( )。 ( A) ALTER ( B) CREATE ( C) UPDATE ( D) INSERT 9 数据库的故障恢复一般是由 ( )。 ( A)
3、数据流图完成的 ( B)数据字典完成的 ( C) DBA完成的 ( D) PAD图完成的 10 关系模型允许定义三类数据约束,下列不属于数据约束的是 ( )。 ( A)实体完整性约束 ( B)参照完整性约束 ( C)域完整性约束 ( D)用户自定义的完整性约束 11 使用如下 ( )保留字可以使只有在该类的包中的其他 类才能访问该类。 ( A) abstract ( B) private ( C) protected ( D)不使用保留字 12 J2SE作为一种应用和开发环境,提供了一整套实用工具,其中 ( )是 Java语言的编译工具。 ( A) java ( B) javadoc ( C)
4、 javap ( D) javac 13 下列选项中,其值与其他三个选项的值不相等的是 ( )。 ( A) 15 ( B) 0xF ( C) OXF ( D) 015 14 下列代码的执行结果是 ( )。 public class Test public static void main (String args) int a=3, b=5, c=8; String s=“abc“; System.out.println(a+b+s+c); ( A) 35abc8 ( B) 8abc8 ( C) 16 ( D) abc 15 下面选项中不属于简单数据类型的是 ( )。 ( A)类 ( B)布尔
5、类型 ( C)整数类型 ( D)浮点类 型 16 以下选项中正确的科学计数格式表示形式是 ( )。 ( A) E3 ( B) 3.2E0.5 ( C) 3.2E2 ( D) 3.2E 17 复合语句是用 ( )括起来的一段代码。 ( A)单引号 ( B)中括号 ( C)大括号 ( D)小括号 () 18 5+5和 5+“5“的结果是 ( )。 ( A) 10, 10 ( B) 58, 58 ( C) 58, “55“ ( D) 55, 58 19 下列注释中,不正确的是 ( )。 ( A) /*注释文字 */ ( B) /*注释文字 */ ( C) /*注释文字 ( D) /注释文字 20 假
6、设 a是 int类型的变量,并初始化为 1,则下列选项中合法的条件语句是( )。 ( A) if(A) ( B) if(a 3) ( C) if(a=2) ( D) if(true) 21 在 Java中,所有类的根类是 ( )。 ( A) java.lang.Object ( B) java.lang.Class ( C) java.applet.Applet ( D) java.awt.Frame 22 在 Java中,用 package语句说明一 个包时,该包的层次结构必须是 ( )。 ( A)与文件的结构相同 ( B)与文件目录的层次相同 ( C)与文件的类型相同 ( D)与文件大小相
7、同 23 Reader类包含的主要方法有 ( )。 ( A) read() ( B) skip() ( C) reset() ( D)以上答案都正确 24 下列叙述中,错误的是 ( )。 ( A) Java中,方法的重载是指多个方法可以共享同一个名字 ( B) Java中,用 abstract修饰的类称为抽象类,它不能实例化 ( C) Java中,接口是不包含成员变量和方法 实现的抽象类 ( D) Java中,构造方法可以有返回值 25 有如下类定义: class Test private int x; public int y; public void setX (int m) x=m; p
8、ublic int getX( ) return x; 现用 Test t=new Text();生成一个对象 t,则如下语句中,错误的是 ( )。 ( A) t.x 10; ( B) t.y=10; ( C) t. setX(10); ( D) int m=t.getX( ); 26 执行下列程序后,输出结果为 ( )。 public class Test public static void main (String args) StringBuffer sb new StringBuffer(“北京 2008“ ); System. out. println (“length “ + s
9、b. length ( ) ); ( A) length = 8 ( B) length = 10 ( C) length = 6 ( D) length = 20 27 下列不是 InputStream子类的是 ( )。 ( A) FileInputStream ( B) ByteArrayInputStream ( C) File ( D) FiherInputStream 28 当处理的数据量很多,或向文件写很多次少量的数据,一般使用 ( )流。 ( A) FileOutput ( B) PipedOutput ( C) DataOutput ( D) BufferedOutput 29
10、 下列关于 J2EE的特点的说法中,错误的是 ( )。 ( A) J2EE的基础是 J2SE ( B) J2EE提供高度的安全性支持 ( C)支持事务处理和异步通信 ( D)支持面向过程的 Web开发 30 下列关于线程组的说法中,错误的是 ( )。 ( A)一个线程只能在创建时设置其线程组 ( B)线程组使一组线程可以作为一个对象进行统一处理和维护 ( C)在应用程序中线程可以独立存在,不一定要属于某个线程组 ( D)线程组由 java.lang包中的 ThreadGroup类来实现 31 要串行化某些类的对象,这些类就必须实现 ( )。 ( A) java.io.Externalizabl
11、e接口 ( B) java.io.DataInput 接口 ( C) DataOutput接口 ( D) Serializable接口 32 下列布局管理器中,属于 Swing特有的是 ( )。 ( A) GridBagLayout ( B) FlowLayout ( C) CardLayout ( D) BoxLayout 33 JDBC API主要都是定义在下列的 ( )包中。 ( A) java.sql.* ( B) java.io.* ( C) java.awt.* ( D) java.util.* 34 Applet运行时,被浏览器或 AppletViewer调用的第一个方法是 (
12、)。 ( A) init() ( B) paint() ( C) stop() ( D) start() 35 语句 CODEBASE=codebaseURL属性的功能是 ( )。 ( A)用来指定 Applet 的 URL地址 ( B)指定包含 Applet 或 JApplet字节码的文件名 ( C)指定一些文字 ( D)为即将创建的 Applet定义了一个名字 36 冒泡排序算法在最好情况下的元素交换次数为【 】。 37 在面向对象方法中,对象可看成是属性 (数据 )以及这些属性上的专用操作的封装体。封装是一种【 】技术。 38 一个算法通常由两种基本要素组成:一是对数据对象的运算和操作,
13、二是算法的【 】。 39 关系模型的完整性规则是对关系的某种约束条件,包括实体完整性、【 】和自定义完整性。 40 所谓【 】,是指对数据集合中的各元素以各种方式进行运算,包括插入、删除、查找、更改等运算,也包括对数据元素进行 分析。 41 UDP允许传输的数据包最大为【 】。 42 Class类是一个特殊类,它在编译时由【 】自动生成,并伴随每一个类。 43 continue语句必须使用于【 】中。 44 在 Java运行时,如获得一个异常对象,它会自动寻找处理该异常的代码,它从生成异常对象的代码构件开始,沿着【 】按层回溯寻找,直至找到处理该类异常方法为止。 45 Java线程组把一组线程
14、看做一个【 】进行统一处理。 46 设有如下的变量定义: double x 4.700000; float y 2.5f; int z 7; 则执行表达式 “y+z%3* (int) (x+y)%2/4”后的值是【 】。 47 若有如下程序: public class Test public static void main (String args) int x 20; if (x 10) System.out.print(x-=5); if (x 5) System.out.print(x-); 则程序运行后的输出结果是【 】。 48 表示条件: 10 x 100或 x 0的 Java语言
15、表达式是【 】。 49 MouseEvent事件可以实现监听器接口的是 MouseListener和【 】。 50 当浏览器能够解释 APPLET标记但不能运行 Applet时,将显示【 】标记中的内容。 国家二级( JAVA)笔试模拟试卷 132答案与解析 1 【正确答案】 A 【试题解析】 数据结构是研究数据元素及其之间的相互关系和数据运算的一门学科,它包含 3个方面的内容,即数据的逻辑结构、存储结构和数据的运算。 2 【正确答案】 D 【试题解析】 串的长度是指串中的字 符个数,且其字符个数可以为零。 3 【正确答案】 B 【试题解析】 计算机算法是指解题方案的准确而完整的描述,它的基本
16、特征为:可行性、确定性、有穷性和拥有足够的情报。 4 【正确答案】 C 【试题解析】 对象的基本特点有,标识唯一性、分类性、多态性、封装性和模块独立性。 5 【正确答案】 B 【试题解析】 软件工程概念的出现源自软件危机。所谓软件危机是泛指在计算机软件的开发和维护过程中所遇到的一系列严重问题。总之,可以将软件危机归结为成本、质量、生产率等问题。 6 【正确答 案】 C 【试题解析】 软件设计遵循软件工程的基本目标和原则,建立了适用于在软件设计中应该遵循的基本原理和与软件设计有关的概念,它们是抽象、模块化、信息隐蔽和数据独立性。自底向上是集成测试中增量测试的一种。 7 【正确答案】 D 【试题解
17、析】 PAD是问题分析图,常用于详细设计; PFD 是程序流程图,常用于详细设计,很多如 C、 VB 等程序设计书上都有简单的实例; N-S 是方框图,比程序流程图更灵活,也常用于详细设计; DFD是数据流图,用于需求分析。 8 【正确答案】 A 【试题解析】 SQL语句中凡创建都用 CREATE,删除都用 DROP,改变用ALTER,再跟类型和名字,附加子句。 9 【正确答案】 C 【试题解析】 一旦数据库中的数据遭到破坏,需要及时进行恢复, RDBMS 一般都提供此种功能,并由 DBA负责执行故障恢复功能。 10 【正确答案】 C 【试题解析】 关系模型允许定义三类数据约束,它们是实体完整
18、性约束、参照完整性约束以及用户自定义完整性约束。其中前两种完整性约束由关系数据库系统支持,对于用户自定义的完整性约束,则由关系数据库系统提供完整性约束语言,用户利用该语言给出约束条件,运行时由系统自动检查。 11 【正确答案】 D 【试题解析】 类的默认访问控制策略是不使用保留字来定义类,这会限制其他包中的类访问该类。 protected 保留字不起作用,原因是具有 protected 成员的类的子类可以在包外访问这些被保护的成员。因此正确答案 应该是选项 D。 12 【正确答案】 D 【试题解析】 java是 Java解释器,用于直接从类文件执行 Java应用程序字节代码。 javadoc用
19、于生成 API文档。 javap 是 Java反汇编器。 javac是 Java语言的编译器。 13 【正确答案】 D 【试题解析】 本题考查 Java语言中的进制表示与换算。首先要清楚各种进制的表示方法,整型常量有 3种书写格式:十进制数,如 123、 -50;八进制整数:以 0开头,如 012表示十进制的 10;十六进制整数:以 Ox或 OX开头,如 Ox12表示十进制的 18。选项 A是十进制 15,选项 B和选项 C是十六进制中的 F,相当于十进制的 15,选项 D为八进制, 015相当于十进制的 13,与其他选项不同。 14 【正确答案】 B 【试题解析】 Java表达式的同级运算符
20、从左到右进行,括号可以改变优先级。 +在 Java中既是算术的加号,也可以作为字符串的连接符号。本题中 a与 b 先进行算术加运算,得结果为 8,由于 s的值为 String类型,所以数值 8与 s作连接运算,得结果为字符串 “8abc”,最后再与 c的值作连接运算,得结果为 “8abc8”。 15 【正确答案】 A 【试题解析】 Java中的简单数据类型有整数类型、浮点数类型、字符类型和布尔类型。类、接口和数组等都称为复合数据类型。 16 【正确答案】 C 【试题解析】 科学计数格式中要求使用 e或 E 作为指数符,在 e/E前必须有数字,在 e/E 后必须是整数。 C符合要求,为正确答案。
21、 17 【正确答案】 C 【试题解析】 Java语言中的语句既包括单一语句,也包括由多条单一语句组成的复合语句。用大括号将单一语句括起来就是复合语句。 18 【正确答案】 C 【试题解析】 字符常量是用单撇号括起来的 一个字符,用双撇号括起来的是字符串。 char类型的值可转换成 int类型,因此在作 5+5运算时, 5首先被自动转化为整数 53(其 ASCII 码 ),然后与 5相加得 58;在作 5+“5“运算时, “5“不能转化为整数, 5被转化为一个字符串 “5“再与加号后的 “5“作连接运算,其结果为“55“。 19 【正确答案】 C 【试题解析】 Java中可以采用三种注释方式:
22、/用于单行注释。 /* */用于多行注释。 /* */是 Java所特有的 doc注释。只有 C是不正确的注释形式。 20 【正确答案】 D 【试题解析】 条件语句的条件值应该是布尔类型,选项 A中, 1不是布尔类型的值;选项 B中, a =3 的值为 int类型;选项 C中, a=2的值不是布尔类型;选项 D正确,该语句的含义是无论何种情况下都执行。 21 【正确答案】 A 【试题解析】 Java中 java.lang包封装着所有编程应用的基本类。 Object是所有类的根,它所包含的属性和方法被所有类继承。 Class类是由编译器自动生成对象的一个特殊类,它伴随每个类。选项 C和 D都是普
23、通类。 22 【正确答案】 B 【试题解析】 Java采用包来管理类名空间,为编程提供一种命名机制,也是一种可见性限制机制。定义一个包要用 package关键字,用 package语句说明一个包时,该包的层次结构必须与文件目录的层次相同。否则,在编译时可能出现查找不到的问题。 23 【正确答案】 D 【试题解析】 Reader 类包含的方法有 read()、 skip()、 markSupported()、mark()、 reset()等。 24 【正确答案】 D 【试题解析】 构造方法是给对象赋初值,没有返回值。 25 【正确答案】 A 【试题解析】 本题考查 public和 private
24、修饰符的访问权限。 public指明变量和方法为公有,可以通过其对象直接访问,因此,选项 B、 C、 D都是正确的访问方法。 private指明变量为私有访问,只能被该类自己访问或调用,因此, A选项中不能通过其对象来访问私有变量。 26 【正确答案】 C 【试题解析】 StringBuffer 类的 length()函数是求出字符序列的长度。 27 【正确答案】 C 【试题解析】 File类是 java.io包中的非流类,它以系统无关的方式描述文件对象 的属性。字节输入流均为 InputStream的子类,典型的有:ByteArrayInputStream、 FilelnputStream、
25、 FilterInputStream、 PipeInputStream等。 28 【正确答案】 D 【试题解析】 如果处理的数据量很多,或向文件写很多次少量的数据,可以使用一个 BufferedOutput流。执行时,所有输出全部放在一个缓冲区里。当缓冲区填满时,它将一次性写入磁盘,节省了时间和多次写硬盘的次数、 29 【正确答案】 D 【试题解析】 J2EE支持高效率的基于构件的 Web 开发,构件是面向对象的,不是面向过程的。 30 【正确答案】 C 【试题解析】 Java语言中,每个线程都必须归属于一个线程组。线程组可以把一组线程作为单个对象进行统一的处理或维护。线程在创建时必须显示确定
26、其归属的线程组,其他任何时候都不允许更改线程所属的线程组。线程创建时默认继承父进程的线程组,线程组由 java.lang 包中的 ThreadGroup 类来实现。 31 【正确答案】 D 【试题解析】 只有当类实现了 Serializable接口时,类的对象才可 以串行化。事实上 Serializable是一个空接口,只是简单地标识了一个类的对象可以串行化,并没有定义任何常量和抽象方法。 32 【正确答案】 D 【试题解析】 Swing除继续沿用了 AWT 中的 FlowLayout、 BorderLayout、CardLayout、 GridLayout、 GridBagLayout 布局
27、管理器外,新增了一个BoxLayout布局管理器。 BoxLayout布局管理器按照自上而下 (y 轴 )或者从左到右(x 轴 )的顺序布局依次加入构件。 33 【正确答案】 A 【试题 解析】 java.sql.*包给出了一些类和方法,共同组成了 JDBC API,在 Java程序中通过调用 JDBC API和 JDBC DriverManager进行交互。 34 【正确答案】 A 【试题解析】 Applet运行时,首先由浏览器调用 init()方法,通知该 Applet已被加载到浏览器中,使 Applet执行一些基本初始化。 35 【正确答案】 A 【试题解析】 CODEBASE=code
28、baseURL 属性用来指定 Applet的 URL 地址; CODE=appletFile属性指 定包含 Applet或 JApplet字节码的文件名; ALT=ahernateText 属性指定一些文字; NAME=appletInstanceName 属性为创建的 Applet定义了一个名字。 36 【正确答案】 0 【试题解析】 根据冒泡排序算法思想可知,若待排序的初始序列为 “正序 ”序列,则只需进行一趟排序,在排序过程中进行 n-1次关键字间的比较,且不移动和交换元素,这种情况是冒泡排序的最好情况,故冒泡排序算法在最好的情况下的元素交换次数为 0。 37 【正确答案】 信息隐蔽 【
29、试题解析】 对象的封装性是指将对象的方法和属性代码包装在一起,即包含并隐藏对象的信息,以便把对数据和方法的访问尽量限制在其内部本身。封装隐藏了不必要的复杂性,因而有利于对复杂对象的管理和对程序安全的防护。 38 【正确答案】 控制结构 【试题解析】 一个算法通常由两种基本要素组成:一是对数据对象的运算和操作,二是算法的控制结构。 39 【正确答案】 参照完整性 【试题解析】 关系模型允许定义三类数据约束,它们是实体完整性、参照完整性以及用户定义的完整性约束,其中前两种完整性约束由关系数据库系统自动 支持。 40 【正确答案】 数据处理 【试题解析】 所谓数据处理,是指对数据集合中的各元素以各种
30、方式进行运算。在数据处理领域中,建立数学模型有时并不十分重要,事实上,许多实际问题是无法表示成数学模型的。人们最感兴趣的是知道数据集合中数据元素之间存在什么关系,应如何组织它们,即如何表示所需要处理的数据元素。 41 【正确答案】 64KB 【试题解析】 UDP是无连接协议,对每个数据报是一个独立的信息传输单位,包括完整源地址和目的地址,无需建立发送方和接收方之间的连接,它对传输数据的大小限制 在 64KB 之内。 42 【正确答案】 编译器 【试题解析】 Class 类是由编译器自动生成对象的一个特殊类,它伴随每个类,这个 Class类是一个特殊类,它有一个 final类,所有的方法都用类变
31、量来调用,即对 Class类不可能实例化。 43 【正确答案】 循环语句 【试题解析】 continue语句有两种形式,一种是不带标签的,作用是终止当前这一轮循环,跳过下面的语句,直接进入下一轮循环;一种是带标签的,作用是直接转入标签所标识的循环层次。这两种形式都是对循环语句而言的,因此continue语句必须使用于循环语句中。 44 【正确答案】 调用栈 【试题解析】 在 Java语言中,有时一个方法生成一个异常,但该方法并不能确定如何处理此异常,必须将异常传递给调用方法,由调用它的方法来处理,此时的方法用声明异常抛出,让异常对象可从调用栈向后传递,直至有相应的方法捕获它为止。 45 【正确
32、答案】 对象 【试题解析】 在 Java程序中,每一个线程都属于一个线程组,可以使用统一的方法调用、启动或者挂起线程组内的所有线程。 46 【正确答案】 5 【试题解析】 根据算术运算的优 先级规则,应先执行 z%3* (int) (x+y)%2/4 之后,再用其值与 y作加法运算。 z%3*(int) (x+y)%2/4 的执行顺序为先计算 z%3,得值为 1,再计算 x+y并取整,其值为 7,用 z%3的值 1与 (int) (x+y)的值 7相乘得 7,再计算 7%2得值为 1,再计算 1/4,由于两个整数相除,其结果为商的整数部分,所以 1/4 的值为 0。最后执行 y+0,其结果为
33、2.5。 47 【正确答案】 1515 【试题解析】 本题中第一次 if语句条件判断时, x的值为 20, x 10 成立,所以执行其后的输出 语句,输出的值 x-=5为一个复合赋值运算符组成的表达式,相当于 x=x-5,所以 x被赋以 15,表达式 x-=5的值也是 15;执行第二次 if语句判断时, x的值为 15, x 5成立,所以执行其后的输出语句,输出表达式 x-的值,由于自减运算符 -在变量 x之后,所以是先取变量 x的值作为表达式的值,然后变量x再作自减运算,所以表达式 x-的值为 15。所以两次输出的结果在屏幕上显示为: 1515。 48 【正确答案】 10 x & x 100
34、 | x 0 【试题解析】 10 x 100表示既要 10 x,又要 x 100,两个条件需同时满足,所以 10 x和 x 100之间应该是逻辑与运算: 10 x & x 100,然后再将10 x & x 100作为一个整体与 x 10作逻辑或运算,即: (10 x & x 100) | x 10,由于 &运算优先级高于 |运算符,所以可以省去括号。当然,交换值和变量的位置,同时改变比较运算符,此题的答案可以写成其他多种形式,如 x 10 & x 100 | x 0、 x 10 & 100 x | x 0等。 49 【正确答案】 MouseMotionListener 【试题解析】 MouseListener和 MouseMotionListener 分别对应的鼠标事件是鼠标单击和鼠标移动。 50 【正确答案】 ALT 【试题解析】 ALT标记中的内容是除了 PARAM之外的任何 HTML 文本,当浏览器不能运行 Applet时,就会显示该标记中的内容。