1、二级 JAVA 笔试-90 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.Java 语言中用于标识临界区的关键字是( )。(分数:2.00)A.serializeB.transientC.synchronizedD.static2.和 AWT 有关的所有事件类都是从类( )派生而来。(分数:2.00)A.java.awt.AWTEvemB.java.lang.ObjectC.java.awt.FontD.java.awt.Graphics3.在进行单元测试时,常用的方法是( )。(分数:2.00)A.采用白盒测试,辅之以黑盒测试B.采用黑
2、盒测试,辅之以白盒测试C.只使用白盒测试D.只使用黑盒测试4.下列安全控制命令中,属于现实证书缓存区和密钥表项命令的是( )。(分数:2.00)A.policytoolB.kinitC.klistD.ktab5.Runnable 接口中包括的抽象方法是( )。(分数:2.00)A.run()B.start()C.sleep()D.isAlive()6.下面各项语句中会产生编译错误的是( )。(分数:2.00)A.float F=4096.0F;B.double D=4096.0;C.byte B=4096;D.char C=4096;7.下列关于线性表叙述不正确的是( )。(分数:2.00)A
3、.只有一个根节点,它无前件B.只有一个终端节点,它无后件C.除根节点和终端节点,其他节点都有且只有一个前件,也有且只有一个后件D.线性表必须要有数据元素8.字符串常量“hello“的字符个数是( )。(分数:2.00)A.3B.4C.5D.69.下面几种调试方法中不适合调试大规模程序的是( )。(分数:2.00)A.强行排错法B.回溯法C.原因排除法D.静态调试10.字符流(character stream)是一种( )。(分数:2.00)A.特殊类型的字节流,仅仅处理文本数据B.一种类型的流C.它修改了处理现存流的方式D.它可用来处理文件11.下列变量名中合法的是( )。(分数:2.00)A
4、.CHINAB.byte-sizeC.doubleD.A+a12.以下内容属于存储在计算机内有结构的数据集合的是( )。(分数:2.00)A.数据库系统B.数据库C.数据库管理系统D.数据结构13.欲构造 ArrayList 类的一个实例,此类继承了 List 接口,下列哪个方法是正确的? ( )(分数:2.00)A.ArrayList myList=new Object();B.List myList=new ArrayList();C.ArrayList myList=new List();D.myList=new List();14.设执行下面的赋值语句a = Float.valueOf
5、(“12.34“).floatValue( )之后,a 的值是( )。(分数:2.00)A.a=“12.34“B.a=12.34C.a=1234D.a=1215.如果抛出异常,则应用语句( )。(分数:2.00)A.catchB.throwC.tryD.finally16.下列属于 Applet 运行过程中的是( )。(分数:2.00)A.浏览器加载 Applet 文件B.浏览器下载 Applet 文件C.浏览器中那个的 Java 环境运行 AppletD.Applet 操作浏览器本地的文件系统17.算法的空间复杂度是指( )。(分数:2.00)A.算法程序的长度B.算法程序中的指令条数C.算
6、法程序所占的存储空间D.算法执行过程中所需要的存储空间18.下列不属于 Java 的图形用户界面内容的包是( )。(分数:2.00)A.java.awtB.javax.swingC.java.awt.eventD.java.io19.利用 E-R 模型进行数据库的概念设计,可以分成 3 步:首先设计局部 E-R 模型,然后把各个局部 E-R模型综合成一个全局的模型,最后对全局 E-R 模型进行( )。(分数:2.00)A.简化B.结构化C.最小化D.优化20.给定下面的代码:byte arrayl,array2;byte array3;byte array4;如果上面的每一个数组都初始化了,以
7、下各项语句中错误的是( )。(分数:2.00)A.array2=array1B.array2=array3C.array2=array4D.both A and B21.Java 语言具有许多优点和特点,下列选项中是通过 Java 虚拟机实现的特点的是( )。(分数:2.00)A.安全性B.多线程C.分布式D.可移植22.下列关于类型转换的说法中,正确的是( )。(分数:2.00)A.将较长的数据类型转换为较短的数据类型可以用自动类型转换B.将较长的数据类型转换为较短的数据类型只能用强制类型转换C.强制类型转换可以保证数据完整性D.boolean 类型数据只能和 int 类型进行强制类型转换2
8、3.下列语句段将输出字符*的个数为( )。int i=100;while (1)i-;if(i=0)break;cout*;(分数:2.00)A.98B.99C.100D.10124.设有关系 R 及关系 S,它们分别有 p、q 个元组,则关系 R 与 S 经笛卡儿积后所得新关系的元组个数是 ( )。(分数:2.00)A.pB.qC.p+qD.p*q25.执行下面的程序段后,x 的值为( )。public class Sunpublic static void main(String args )int x=5;for(int i=1;i=20;i=i+2)x=x+i/5;System.out
9、.println(x);(分数:2.00)A.21B.22C.23D.2426.设有如下程序:public class Sunpublic static void main(String args )int x,y;x=(int)Math.sqrt(2)/2+(int)Math.random()*2/2;y=(int)Math.sqrt(3)/3+(int)Math.random()*3/3;if (xy)System.out.println(“xy“);else if (x=y)System.out.println(“x=y“);elseSystem.out.println(“xy“);程序
10、运行的结果为( )。(分数:2.00)A.xyB.x=yC.xyD.以上都不对27.以下各项类名命名中正确的是( )。(分数:2.00)A.includeB.INCLUDEC.thisD.12 book28.下面关于串行化的说法中正确的是( )。:对象串行化机制需要将对象的状态保存到文件中,而后能够通过读入对象状态来重新构造对象,恢复程序状态。:通过让类实现 java.io.Serializable 接口可以将类串行化。这个接口是一个制造者(marker)接口。也就是说,对于要实现它的类来说,该接口不需要实现任何方法。:将对象读出或者写入流的主要类有两个:ObjectOutputStream
11、与 ObjectInputStream。:以上都不对。(分数:2.00)A.、B.、C.、D.、29.下列方法中设置 Swing 容器 JFrame 大小为 2030 的语句是( )。(分数:2.00)A.setSize(20, 30)B.setTitle(20, 30)C.setVisible(20, 30)D.setBounds20, 30)30.面向对象程序设计有许多特性,下列选项中用来尽可能隐蔽对象的内部细节的是( )。(分数:2.00)A.多态性B.动态性C.封装性D.继承31.Java Applet 的几个方法的执行顺序,正确的是( )。(分数:2.00)A.initstartde
12、stroystopB.initstartstopdestroyC.startinitdestroystopD.startinitstopdestroy32.编制好的程序,确保它的正确性和可靠性的同时,还应强调良好的编程风格。在书写功能性注解时应考虑( )。(分数:2.00)A.仅为整个程序做注解B.仅为每个模块做注解C.为程序段做注解D.为每个语句做注解33.下列关于队列的叙述中正确的是( )。(分数:2.00)A.在队列中只能插入数据B.在队列中只能删除数据C.队列是先进先出的线性表D.队列是先进后出的线性表34.下列各项中不是 JDBC API 向 JDBC Driver Manager
13、发出请求的内容的是( )。(分数:2.00)A.指定要加载的 JDBC 驱动程序B.指定需要连接的数据库系统的类型C.指定需要连接的数据库系统的实例D.指定本地系统的类型35.在一个单链表中,若 q 结点是 p 结点的前驱结点,若在 q 与 p 之间插入结点 s,则执行( )。(分数:2.00)A.slink=pdink; plink=sB.plink=s; slink=qC.plink=s4ink; slink=pD.qlink=s; slink=p二、填空题(总题数:15,分数:30.00)36.数据的逻辑结构可用一个二元组 B=(K, R)来表示,其中 K 是 【1】 ,R 是 【2】
14、。(分数:2.00)填空项 1:_37.设栈 S 和队列 Q 的初始状态为空,元素 e1、e2、e3、e4、e5 和 e6 依次通过栈 S,一个元素出栈后即进入队列 Q,若 6 个元素出队的顺序是 e2、e4、e3、e6、e5、e1 则栈 S 的容量至少应是 【3】 。(分数:2.00)填空项 1:_38.下图所示的二叉树的先序遍历序列是 【4】 。(分数:2.00)填空项 1:_39.数据库管理系统是位于 【5】 之间的软件系统。(分数:2.00)填空项 1:_40.有以下程序#include lostreamusing namespace std;int main()int i=010,j
15、=10;cout(+i)“,“j-endl;return 0;则该程序运行后的输出结果是 【6】 。(分数:2.00)填空项 1:_41.Java 语言通过接口支持 【7】 继承,使类继承具有更令获得扩展性。(分数:2.00)填空项 1:_42.字符变量以 char 类型表示,它在内存中占 【8】 bit。(分数:2.00)填空项 1:_43.在操作系统中,被称作轻型进程的是 【9】 。(分数:2.00)填空项 1:_44.Java 现成调度策略是一种基于优先级的 【10】 。(分数:2.00)填空项 1:_45.根据一个模式串 patternStr,将表达式编译成模式对象的语句是 【11】
16、。(分数:2.00)填空项 1:_46.下面 MyFrame 类创建了一个简单容器。import javax.swing.JFrame;public class MyFrame extends 【12】 public MyFrame()super(“MyFrame“);setSize(300,100);setDefaultCloseOperation(JFrame.EXIT ON CLOSE);setVisible(true);public static void main(String arguments)MyFrame mf= new MyFrame();请在画线处添上正确的语句,使得程序
17、能够正确运行。(分数:2.00)填空项 1:_47.java.awt 包主要包括 3 个概念:构件、容器和 【13】 。(分数:2.00)填空项 1:_48.J2SDK 的国际化命令是 【14】 。(分数:2.00)填空项 1:_49.如果一个 Java Applet 源程序文件只定义一个类,该类的名称为 MyFirstApplet,则存储该源程序文件的文件名必须为 MyFirstApplet.java,那么编译该程序文件将产生的字节码文件名为 【15】 。(分数:2.00)填空项 1:_50.下列程序实现的功能是当按下键盘时,在 Applet 中通过 paint()方法,在(50,50)位置
18、处显示出按下的键的名称。在横线处填写正确的语句。import java.awt.*;import java.awt.event.*;import java.applet.*;public class Test7 extends AppletString str=“;public void init()addKeyListener (new KeyAdapter()public void keyPressed(KeyEvent ke)【16】 ;repaint(););requestFocus();public void paint(Graphics g)g.drawString(“你按下的键是
19、:“ +str, 50,50);(分数:2.00)填空项 1:_二级 JAVA 笔试-90 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.Java 语言中用于标识临界区的关键字是( )。(分数:2.00)A.serializeB.transientC.synchronized D.static解析:解析 一个程序中单独的、并发的线程对同一个对象进行访问的代码段,称为临界区。在 Java 语言中,临界区可以是一个语句块或是一个方法,并且用 synchronized 关键字标识。2.和 AWT 有关的所有事件类都是从类( )派生而来。(分数:2
20、.00)A.java.awt.AWTEvem B.java.lang.ObjectC.java.awt.FontD.java.awt.Graphics解析:解析 和 AWT 有关的所有事件类都从类 java.awt.AWTEvent 派生而宋的。3.在进行单元测试时,常用的方法是( )。(分数:2.00)A.采用白盒测试,辅之以黑盒测试 B.采用黑盒测试,辅之以白盒测试C.只使用白盒测试D.只使用黑盒测试解析:解析 本题考核软件测试方法的应用。白盒测试是测试程序内部的逻辑结构及有关信息,黑盒测试只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。从程序内部的逻辑结构对系统进行测试才
21、是测试的根本,即比较深层次的测试,更容易发现和解决程序中的问题,因此单元测试时应以白盒测试为主,而黑盒测试只能作辅助。4.下列安全控制命令中,属于现实证书缓存区和密钥表项命令的是( )。(分数:2.00)A.policytoolB.kinitC.klist D.ktab解析:解析 Java 语言的安全控制命令包括: keytool、jarsigner、policytool、kinit、klist、ktab。其中,klist 命令用于列表显示整数缓存区和密钥表中的项。5.Runnable 接口中包括的抽象方法是( )。(分数:2.00)A.run() B.start()C.sleep()D.is
22、Alive()解析:解析 本题考查线程创建和使用的基本知识。Runnable()接口中只有一个抽象方法 run(), Thread 类的主要方法有 run()、start()、sleep()、 isAlive()等。选项 A 正确,从上面的分析可知 run()是 Runnable()接口中的唯一的抽象方法;选项 B 错误,start()方法是将线程从不可运行状态转到可运行状态,start()方法产生了线程运行需要的系统资源,并调用线程体,也就是 run()方法,但它不是抽象方法;选项 C 错误,sleep()方法将线程从可运行状态转到阻塞状态,它也不是抽象方法;选项 D错误,isAlive()
23、方法是判断线程是否存于可运行状态。6.下面各项语句中会产生编译错误的是( )。(分数:2.00)A.float F=4096.0F;B.double D=4096.0;C.byte B=4096; D.char C=4096;解析:解析 该题考查对基本数据类型的定义及其取值范围的掌握。选项 A 正确,Java 语言默认的实型数的形式是 double 类型的,要把它赋给 float 类型的变量,必须在实型数后面加上 f 或 F 字母;选项 B是正确的;选项 C 是错误的, 4069 已经超出了 byte 类型所能容许的范围 -128127;选项 D 是正确的。因为在 Java 语言里,字符是用双
24、字节表示的,4096 在它能允许的范围之内。故本题答案是 C。7.下列关于线性表叙述不正确的是( )。(分数:2.00)A.只有一个根节点,它无前件B.只有一个终端节点,它无后件C.除根节点和终端节点,其他节点都有且只有一个前件,也有且只有一个后件D.线性表必须要有数据元素 解析:解析 A、B、C 3 个选项都是成为一个线性表的基本要求。一个线性表中可以没有数据元素,称为空线性表。8.字符串常量“hello“的字符个数是( )。(分数:2.00)A.3B.4C.5D.6 解析:解析 本题考查的是字符串常量这个知识点。字符串常量实际上是一个数组,组成数据的字符除显式给出的外,还包括字符结尾处标识
25、字符串结束的符号/0。所以字符串的字符个数等于字符个数加1,Java 语言编译器会自动在字符串的末尾加上/0,作为字符串结束标识。故本题答案是 D。9.下面几种调试方法中不适合调试大规模程序的是( )。(分数:2.00)A.强行排错法B.回溯法 C.原因排除法D.静态调试解析:解析 本题考查对几种调试方法的掌握。其中,强行排错法是最常用也是最低效的,主要思想是通过计算机找错,适合调试大规模程序。回溯法是从出现错误征兆处开始,人工沿控制流程往回追踪,直至发现出错的根源。这是在小程序中常用的一种有效的调试方法。程序变大后,可能的回溯路线显著增加,以致人工进行完全回溯变得不可能。原因排除法是靠演绎、
26、归纳以及二分法来实现的,适合调试大规模程序。静态调试也是一种调试手段,主要是指通过人的思维来分析源程序代码和排错。10.字符流(character stream)是一种( )。(分数:2.00)A.特殊类型的字节流,仅仅处理文本数据 B.一种类型的流C.它修改了处理现存流的方式D.它可用来处理文件解析:解析 本题主要考查 Java 语言的字符流这个知识点。选项 A 正确,字符流(character stream)是特殊类型的字节流,它仅仅处理文本数据;选项 B 是描述过滤流的特点;选项 C 也是描述过滤流的特点;选项 D 是描述文件流的特点。11.下列变量名中合法的是( )。(分数:2.00)
27、A.CHINA B.byte-sizeC.doubleD.A+a解析:解析 在 Java 语言中,变量名的定义要符合其语法规则。B 选项中的变量名 byte-size 中含有不合法的字符“-“,所以不正确:C 选项的变量名是 Java 保留字;而 D 选项中的变量名中同样含有非法的字符”+”。考试中,变量名定义的语法规则这个知识点比较重要。12.以下内容属于存储在计算机内有结构的数据集合的是( )。(分数:2.00)A.数据库系统B.数据库 C.数据库管理系统D.数据结构解析:解析 本题考查考生对几个概念的理解。其中数据库系统是数据库和数据库管理系统软件的合称。数据库管理系统是一个帮助用户创建
28、和管理数据库的应用程序的集合。数据结构描述数据的类型、内容、性质以及数据间的联系。数据库是指存储在计算机内有结构的数据集合。13.欲构造 ArrayList 类的一个实例,此类继承了 List 接口,下列哪个方法是正确的? ( )(分数:2.00)A.ArrayList myList=new Object();B.List myList=new ArrayList(); C.ArrayList myList=new List();D.myList=new List();解析:解析 本题考查在 Java 中如何实现接口。选项 A 错误,只是实例化了一个 ArrayList 类的对象myList,
29、而没有实现接口;选项 B 正确,用 List 来声明 MyList 实现接口,并用 ArrayList 构造出一个实例;选项 C 错误,List 并不是一个类,不能用 new 关键字;选项 D 错误,接口不能实例化一个接口。故本题的答案是 B。14.设执行下面的赋值语句a = Float.valueOf(“12.34“).floatValue( )之后,a 的值是( )。(分数:2.00)A.a=“12.34“B.a=12.34 C.a=1234D.a=12解析:解析 本题考查对基本类型的类包装的理解。Float 类的 valueOf()函数的原型是 static Float valueOf(
30、String s),它是一种静态方法,将字符串的内容提取出来转换为 Float 对象:而 floatValue()函数的原型是 float floatValue(),它返回 Float 对象的浮点值。本题中,先将字符串“12.34“转换为Float 对象,然后再提取该对象的浮点型值,赋给 a。故本题答案是 B。15.如果抛出异常,则应用语句( )。(分数:2.00)A.catchB.throw C.tryD.finally解析:解析 Java 语言中用 throw 语句来抛出异常。选项 A 中,catch 子句应该与 try 子句匹配使用,但不是用来抛出异常的;选项 D 中, finally
31、子句用于为异常处理提供统一的出口。16.下列属于 Applet 运行过程中的是( )。(分数:2.00)A.浏览器加载 Applet 文件B.浏览器下载 Applet 文件C.浏览器中那个的 Java 环境运行 AppletD.Applet 操作浏览器本地的文件系统 解析:解析 Applet 不可以不经授权就访问本地操作系统的文件系统。17.算法的空间复杂度是指( )。(分数:2.00)A.算法程序的长度B.算法程序中的指令条数C.算法程序所占的存储空间D.算法执行过程中所需要的存储空间 解析:解析 本题考查算法的空间复杂度,是重点考点之一。算法的空间复杂度一般是指这个算法执行时所需要的内存空
32、间,其中包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行过程中所需要的额外空间,其中额外空间还包括算法程序执行过程的工作单元以及某种数据结构所需要的附加存储空间。18.下列不属于 Java 的图形用户界面内容的包是( )。(分数:2.00)A.java.awtB.javax.swingC.java.awt.eventD.java.io 解析:解析 本题考查图形用户界面的基本内容。选项 A 错误,java.awt 是 java 1.1 中设计处理图形界面的包;选项 B 错误,javax.swing 是 Java 1.2 中扩展 java.awt 功能的处理图形界面的包;选项 C
33、错误,所有的图形界面的事件类都在 java.awt.event 包内:选项 D 正确,java.io 是 Java 中处理输入输出的包。故本题答案是 D。19.利用 E-R 模型进行数据库的概念设计,可以分成 3 步:首先设计局部 E-R 模型,然后把各个局部 E-R模型综合成一个全局的模型,最后对全局 E-R 模型进行( )。(分数:2.00)A.简化B.结构化C.最小化D.优化 解析:解析 本题考核实体联系模型。在概念设计中按照模块的划分画出每个模块的 E-R 图,然后把这些图合成一张 E-R 图作为全局模型,最后应该对全局 E-R 图进行优化,看看是否有重复和不合理的地方。不能只是进行简
34、单的合并。20.给定下面的代码:byte arrayl,array2;byte array3;byte array4;如果上面的每一个数组都初始化了,以下各项语句中错误的是( )。(分数:2.00)A.array2=array1 B.array2=array3C.array2=array4D.both A and B解析:解析 本题考查对多维数组的理解。二维数组可以有如下的定义方式。type arrayName;type arrayName;type arrayName;其中的 type 代表数组元素的类型,可以是简单类型,也可以是复合类型。本题中,除 array1 是一维数组外,别的数组都是
35、二维数组。选项 A 不能被编译通过,array1 是一维数组,而 array2 是二维数组;选项 B、C、D 都是正确的,可以被编译通过。故本题答案是 A。21.Java 语言具有许多优点和特点,下列选项中是通过 Java 虚拟机实现的特点的是( )。(分数:2.00)A.安全性B.多线程C.分布式D.可移植 解析:解析 本题考查 Java 虚拟机的作用。选项 A 错误,Java 通过删除了指针和内存分配,并利用在解释器执行字节代码之前检查系统安全等措施保障 Java 程序及用户数据的安全;选项 B 错误,多线程使可执行程序具有同时保持几个线程执行的能力,从而使 Java 实现并行机制;选项
36、C 错误,分布式使 Java不用考虑网络细节,使其便于实现分布式计算;选项 D 正确,Java 虚拟机使编译器生成的字节码不用考虑具体的硬件环境,实现一次编写,到处运行。22.下列关于类型转换的说法中,正确的是( )。(分数:2.00)A.将较长的数据类型转换为较短的数据类型可以用自动类型转换B.将较长的数据类型转换为较短的数据类型只能用强制类型转换 C.强制类型转换可以保证数据完整性D.boolean 类型数据只能和 int 类型进行强制类型转换解析:解析 自动类型转换是系统按照优先级顺序表进行的,强制类型转换会导致多出来的那部分数据丢失。Java 语言中 boolean 类型数据不能做类型
37、转换。23.下列语句段将输出字符*的个数为( )。int i=100;while (1)i-;if(i=0)break;cout*;(分数:2.00)A.98B.99 C.100D.101解析:解析 本题考查 while 循环语句。根据 if 条件表达式可知,当 i 的值为 1 时,进入循环体,执行i-后 i 的值变为 0,符合 if 条件,执行 break 跳出 while 循环体。所以共循环 99 次,即输出字符 99 个。24.设有关系 R 及关系 S,它们分别有 p、q 个元组,则关系 R 与 S 经笛卡儿积后所得新关系的元组个数是 ( )。(分数:2.00)A.pB.qC.p+qD.
38、p*q 解析:解析 本题考核对笛卡儿积运算的掌握。笛卡儿积是两个关系的合并操作,关系 R 的每行依次跟关系 S 的每行组成一个新元组,因此关系 R 与 S 经笛卡儿积后所得新关系的元组个数是 pq。25.执行下面的程序段后,x 的值为( )。public class Sunpublic static void main(String args )int x=5;for(int i=1;i=20;i=i+2)x=x+i/5;System.out.println(x);(分数:2.00)A.21 B.22C.23D.24解析:解析 该题考查对 for 循环的理解。for 循环的初始值为 1,每次加
39、 2,当 i5 时,i/5 为 0, x的值不增加,4i10 时,i/5 为 1,x 的值每次加 1,由于 i 每次加 2,故 x 增加 3 次,此时 x 值为 8,当 9x15 时,i/5 为 2,x 增加 2 次, x 值为 12,最后输出 x 值为 21。故本题答案是 A。26.设有如下程序:public class Sunpublic static void main(String args )int x,y;x=(int)Math.sqrt(2)/2+(int)Math.random()*2/2;y=(int)Math.sqrt(3)/3+(int)Math.random()*3/3
40、;if (xy)System.out.println(“xy“);else if (x=y)System.out.println(“x=y“);elseSystem.out.println(“xy“);程序运行的结果为( )。(分数:2.00)A.xyB.x=y C.xyD.以上都不对解析:解析 本题是考查对 if-else 分支结构和几个标准函数语句的理解。程序第 2、第 3 行赋值号右边的两个表达式分别求两个标准函数的值,再进行整除,根据我们对标准函数的理解,其中每项的值均为0,于是,两个表达式的值均为 0,分别赋值给变量 x 和 y,很容易判断出 x 是等于 y 的。进入分支结构后,if
41、 语句的条件 xy 不满足,转去执行 else if 语句,条件 x=y 满足,执行 System.out.println(“x=y“),输出 x=y。故本题答案是 B。27.以下各项类名命名中正确的是( )。(分数:2.00)A.includeB.INCLUDE C.thisD.12 book解析:解析 本题考查 Java 的类命名规则。选项 A 错误,include 是 Java 的关键字,不可以作为类名;选项 B 正确,INCLUDE 与 include 是不同的,Java 是大小写敏感的,前者可以作为类名,而后者是 Java关键字;选项 C 错误,this 是 Java 的关键字,不可
42、以作为类名;选项 D 错误,Java 中类名不能以数字开头。28.下面关于串行化的说法中正确的是( )。:对象串行化机制需要将对象的状态保存到文件中,而后能够通过读入对象状态来重新构造对象,恢复程序状态。:通过让类实现 java.io.Serializable 接口可以将类串行化。这个接口是一个制造者(marker)接口。也就是说,对于要实现它的类来说,该接口不需要实现任何方法。:将对象读出或者写入流的主要类有两个:ObjectOutputStream 与 ObjectInputStream。:以上都不对。(分数:2.00)A.、B.、C.、 D.、解析:解析 本题是考查串行化的概念。对象串行
43、化机制需要将对象的状态保存到文件中,而后能够通过读入对象状态来重新构造对象,恢复程序状态,对使用套接字在网络上传送对象的程序来说,是很有用的。通过让类实现 java.io.Serializable 接口可以将类串行化。这个接口是一个制造者(marker)接口。也就是说,对于要实现它的类来说,该接口不需要实现任何方法。它主要用来通知 Java 虚拟机(JVM),将一个对象串行化。ObjectOutputStream 提供用来将对象写入输出流的 writeObject 方法, ObiectInputStream 提供从输入流中读出对象的 readObject 方法。29.下列方法中设置 Swing
44、 容器 JFrame 大小为 2030 的语句是( )。(分数:2.00)A.setSize(20, 30) B.setTitle(20, 30)C.setVisible(20, 30)D.setBounds20, 30)解析:解析 本题考查 Swing 中关于容器方法的基本知识。选项 A 正确,JFrame 方法 setSize(int, int)用来设置框架大小;选项 B 错误,方法 setTitle(String)可设置标题;选项 C 错误,创建框架时,默认框架是不可见的,可以通过方法 setVisible(tree)来使它们可见;选项 D 错误,显示框架的默认位置是在计算机桌面的左上角
45、,可以通过调用方法 setBounds(int, int, int, int)使其显示到指定位置。故本题答案是 A。30.面向对象程序设计有许多特性,下列选项中用来尽可能隐蔽对象的内部细节的是( )。(分数:2.00)A.多态性B.动态性C.封装性 D.继承解析:解析 本题考查查面向对象的基本概念和特征的理解。选项 A 错误,多态性可以反映出被特殊类继承后的一般属性或行为,可以具有不同的数据类型或表现为不同的形为;选项 B 错误,面向对象用于不断发展的环境中,它能包含新的功能,因而必须是动态的;选项 C 正确,封装性是指把数据隐藏在对象中,使除了该对象的方法以外的任何方法都不能使用这些数据,从
46、而保障数据的健壮性;选项 D 错误,继承性是指可以充分利用已有的代码资源衍生出新的对象和方法。故本题的答案是 C。31.Java Applet 的几个方法的执行顺序,正确的是( )。(分数:2.00)A.initstartdestroystopB.initstartstopdestroy C.startinitdestroystopD.startinitstopdestroy解析:解析 该题考查对 Java Applet 生命周期的几个函数执行顺序的理解。Applet 生命周期是指从Applet 下载到浏览器,到用户退出浏览器,终止 Applet 运行的过程。Applet 运行时,首先由浏览器
47、调用init()方法,然后调用 start()方法,使 Applet 成为激活状态,当 Applet 被覆盖时,调用 stop()停止线程,最后关闭浏览器调用 deserog()。故本题答案是 B。32.编制好的程序,确保它的正确性和可靠性的同时,还应强调良好的编程风格。在书写功能性注解时应考虑( )。(分数:2.00)A.仅为整个程序做注解B.仅为每个模块做注解C.为程序段做注解 D.为每个语句做注解解析:解析 首先应该知道功能性注释是嵌在源程序体中的,用以描述其后的语句或程序段是在做什么工作,或是执行了下面的语句会怎么样。所以它描述的是一段程序,而不是每一条语句,是为程序段做注解。33.下
48、列关于队列的叙述中正确的是( )。(分数:2.00)A.在队列中只能插入数据B.在队列中只能删除数据C.队列是先进先出的线性表 D.队列是先进后出的线性表解析:解析 队列是指允许在一端进行插入,而在另一端进行删除的线性表。允许插入的一端称为队尾,允许删除的一端称为队头,在队列中既可以插入数据也能删除数据,所以选项 A、 B 是错误的。在这种数据结构中,最先插入的元素最先能够被删除,因此队列又称为先进先出的线性表。答案是 C。34.下列各项中不是 JDBC API 向 JDBC Driver Manager 发出请求的内容的是( )。(分数:2.00)A.指定要加载的 JDBC 驱动程序B.指定需要连接的数据库系统的类型C.指定需要连接的数据库系统的实例D.指定本地系统的类型 解析:解析 指定本地系统的类型不属于 JDBC API 向
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1