1、二级 JAVA 笔试-183 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.在 Java 中,负责对字节代码解释执行的是( )。(分数:2.00)A.垃圾回收器B.虚拟机C.编译器D.多线程机制2.for(int x=0,y=0;!xy+)语句执行循环的次数是( )。(分数:2.00)A.0B.5C.6D.无穷3.关于集合类描述正确的是( )。集合类中容纳的都是指向 Object 类对象的指针集合类容纳的对象都是 Objeet 的类例只能容纳对象只能容纳基本数据类型(分数:2.00)A.、B.、C.、D.、4.下列选项中,不属于模块间耦合
2、的是( )。(分数:2.00)A.数据耦合B.标记耦合C.异构耦合D.公共耦合5.下列描述中,不是线性表顺序存储结构特征的是( )。(分数:2.00)A.不便于插入和删除B.需要连续的存储空间C.可随机访问D.需另外开辟空间来保存元素之间的关系6.在匹配器(Matcher)类中,用于寻找下一个模式匹配串的方法是( )。(分数:2.00)A.static boolean matches()B.boolean matcher.find()C.int matcher.start()D.int matcher.end()7.下列程序的执行结果为( )。public class c3public sta
3、tic void main(String args)int i=13,j=10;if(i-j)i+;else j-;System.out.println(i+“/t“+j);(分数:2.00)A.13 10B.12 11C.11 11D.12 128.在 Java 中,表示换行符的转义字符是( )。(分数:2.00)A./nB./fC.nD./ddd9.在创建线程时可以显式地指定线程组,此时可供选择的线程构造方法有( )种。(分数:2.00)A.1B.2C.3D.410.下面程序段的输出结果为( )。package test;public class ClassAint x=20;static
4、 int y=6;public static void main(String args)ClassB b=new ClassB();b.go(10);System.out.println(“x=“+b.x);class ClassBint x;void go(int y)ClassA a=new ClassA();x=a.y;(分数:2.00)A.x=10B.x=20C.x=6D.编译不通过11.Thread 类的方法中用于修改线程名字的方法是( )。(分数:2.00)A.setName()B.reviseName()C.getName()D.checkAccess()12.下列程序的输出结
5、果是( )。public class Testvoid printValue(int m)doSystem.out.println(“The value is“+m)while(-m10)public static void main(String args)int i=10;Test t=new Test();t.printValue(i);(分数:2.00)A.The value is 8B.The value is 9C.The value is 10D.The value is 1113.使用白盒测试法时,确定测试数据应该根据( )和指定的覆盖标准。(分数:2.00)A.程序的内部逻辑
6、B.程序的复杂结构C.使用说明书D.程序的功能14.下列有关数组的叙述中,错误的是( )。(分数:2.00)A.在同一个环境下,数组与内存变量可以同名,两者互不影响B.可以用一维数组的形式访问二维数组C.在可以使用简单内存变量的地方都可以使用数组元素D.一个数组中各元素的数据类型可以相同,也可以不同15.“+”运算符的操作数个数是( )。(分数:2.00)A.1 个B.2 个C.3 个D.4 个16.下列说法正确的是( )。(分数:2.00)A.共享数据的所有访问都必须作为临界区B.用 synchronized 保护的共享数据可以是共有的C.Java 中对象加锁不具有可重入性D.对象锁不能返回
7、17.下面程序段的输出结果为( )。public class Testint a,b;Test()a=100;b=200;Test(int x,int y)a=x;b=y;public static void main(String args)Test Obj1=new Test(12,45);System.out.println(“a=“+Obj1.a+“b=“+Obj1.b);Test Obj2=new Test();System.out.println(“a=“+Obj2.a+“b=“+Obj2.b);(分数:2.00)A.a=100 b=200a=12 b=45B.a=12 b=45a
8、=100 b=200C.a=12 b=200a=100 b=45D.a=100 b=45a=12 b=20018.下列叙述中,错误的是( )。(分数:2.00)A.父类不能替代子类B.子类能够替代父类C.子类继承父类D.父类包含子类19.下面排序算法中,平均排序速度最快的是( )。(分数:2.00)A.冒泡排序法B.选择排序法C.交换排序法D.堆排序法20.将 E-R 图转换到关系模式时,实体与实体间的联系可以表示成( )。(分数:2.00)A.属性B.关系C.键D.域21.下列属于合法的 Java 标识符的是( )。(分数:2.00)A._catB.5booksC.+staticD.-3.1
9、415922.关系数据库管理系统能实现的专门关系运算包括( )。(分数:2.00)A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表23.软件需求分析一般应确定的是用户对软件的( )。(分数:2.00)A.功能需求B.非功能需求C.性能需求D.功能需求和非功能需求24.下列组件不能添加进 Frame 主窗口的是( )。(分数:2.00)A.PanelB.CheckBoxC.DialogD.Choice25.下列描述异常含义的各选项中,正确的是( )。(分数:2.00)A.程序编译错误B.程序语法错误C.程序自定义的异常事件D.程序编译或运行时发生的异常事件26.在
10、文件类提供的方法中,用于创建目录的方法是( )。(分数:2.00)A.mkdir()B.mkdirs()C.list()D.listRoots()27.下列叙述中,正确的是( )。(分数:2.00)A.Java 语言的标识符是区分大小写的B.源文件名与 public 类名可以不相同C.源文件的扩展名为.jarD.源文件中 public 类的数目不限28.一个 Java Application 运行后,在系统中是作为一个( )。(分数:2.00)A.线程B.进程C.进程或线程D.不确定29.有下列二叉树,对此二叉树前序遍历的结果为( )。(分数:2.00)A.B.C.D.30.下列说法中,不属于
11、数据模型所描述的内容是( )。(分数:2.00)A.数据结构B.数据操作C.数据查询D.数据约束31.在 switch(expression)语句中,expression 的数据类型不能是( )。(分数:2.00)A.doubleB.charC.byteD.short32.已知:inta=newint100;在下列给出的数组元素中,非法的是( )。(分数:2.00)A.a0B.a1C.a99D.a10033.在 Java 中,由 Java 编译器自动导入而无需在程序中用 import 导入的包是( )。(分数:2.00)A.java.appletB.java.awtC.java.utilD.j
12、ava.lang34.要串行化某些类的对象,这些类必须实现( )。(分数:2.00)A.Serializable 接口B.java.io.Exceptionlizable 接口C.java.io.Datalnput 接口D.DataOutput 接口35.在 Java Applet 程序中,如果对发生的事件做出响应和处理的时候,应该使用下列( )语句。(分数:2.00)A.import java.awt.event.*;B.import java.io.*;C.import java.awt.*;D.import java.applet.*;二、填空题(总题数:15,分数:30.00)36.关
13、系操作的特点是 1 操作。(分数:2.00)填空项 1:_37.按照逻辑结构分类,结构可以分为线性结构和非线性结构,栈属于 1。(分数:2.00)填空项 1:_38.一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的 1。(分数:2.00)填空项 1:_39.在面向对象程序设计中,从外面看只能看到对象有外部特征,而不知道也无须知道数据的具体结构以及实现操作的算法,这称为对象的 1。(分数:2.00)填空项 1:_40.在一个容量为 32 的循环队列中,若头指针 front=3,尾指针 rear=2,则该循环队列中共有 1 个元素。(分数:2.00)填空项 1:_41.J
14、ava 中的方法的参数传递是 1 调用。(分数:2.00)填空项 1:_42.Java 语言中如果要使用某个包中的类时,需要使用 1 导入。(分数:2.00)填空项 1:_43.执行下面的程序段,输出结果为_。public class Qpublic static void main(String argv)int anar=new int5;System.out.println(anar0);(分数:2.00)填空项 1:_44.一个具体的线程是由 1、代码和数据组成的。(分数:2.00)填空项 1:_45.使得线程放弃当前分得的 CPU 时间,但不使线程阻塞,即线程仍处于可执行状态,随时可
15、能再次分得CPU 时间的方法是 1。(分数:2.00)填空项 1:_46.异常分为运行异常、捕获异常、声明异常和 1。(分数:2.00)填空项 1:_47.以下程序计算 1+1/3+1/5+1/(2N+1),直至 1/(2N+1)小于 0.00001,请在横线处将程序补充完整。public class Sunpublic static void main(String args)int n=1;double term,sum=1.0;don=_;term=1.0/n;sum=sum+term;while(term=0.00001);System.out.println(n);System.ou
16、t.println(sum);(分数:2.00)填空项 1:_48.创建一个显示“选项”的菜单项对象 mi 的正确语句是 1。(分数:2.00)填空项 1:_49.所有由 Container 派生的类称为 1。(分数:2.00)填空项 1:_50.下面 ChangeTitle()中对 b1 和 b2 按钮构造监听器,实现当单击 b1 按钮时标题变为 students,当单击b2 按钮时标题变为 teachers。请将程序补充完整。public ChangeTitle()super(“Title Bar“);b1.addActionListener(this);_Jpanel pane=new
17、Jpanel();Pane.add(b1);Pane.add(b2);SetContentPane(pane);public void aetionPerformed(ActionEvent evt)Object sourve=evt.getSource();if(sourve=b1)setTitle(“Students“);else if(source=b2)setTitle(“Teachers“);repaint();(分数:2.00)填空项 1:_二级 JAVA 笔试-183 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.在 Java
18、 中,负责对字节代码解释执行的是( )。(分数:2.00)A.垃圾回收器B.虚拟机 C.编译器D.多线程机制解析:解析 本题考查 Java 语言的虚拟机。Java 语言的执行模式是半编译半解释型。Java 编写好的程序首先由编译器转换为标准字节代码,然后由 Java 虚拟机去解释执行。字节代码是一种二进制文件,但不能直接在操作系统上运行,可看做虚拟机的机器码。虚拟机把字节码程序与各操作系统和硬件分开,使Java 程序独立于平台。Java 中的虚拟机是非常重要的概念,是 Java 语言的基础,掌握后有助于理解Java 语言的实现。2.for(int x=0,y=0;!xy+)语句执行循环的次数是
19、( )。(分数:2.00)A.0B.5C.6 D.无穷解析:解析 此题是典型的考题。题中 x=0,则!x 永远为真,对于条件表达式!xif(i-j)i+;else j-;System.out.println(i+“/t“+j);(分数:2.00)A.13 10 B.12 11C.11 11D.12 12解析:解析 程序是由 ifelse 语句构成的流程,分析判断条件,变量 i 和 j 比较,得到条件表达式的值为 true,然后执行 i1,现在变量 i 的值为 12,而 j 的值为 10;由于条件表达式为 true,则执行i+,因此 i 的值为 13,并跳过 else 子句块,循环控制语句执行完
20、毕,这时变量 i 和 i 的值分别为 13 和10。8.在 Java 中,表示换行符的转义字符是( )。(分数:2.00)A./n B./fC.nD./ddd解析:解析 本题考查 Java 转义符的概念。在 Java 中用反斜杠(/)开头,/n 表示换行,所以选项 A 正确。/f 表示走纸换页,/ddd 表示 13 位的八进制数据 ddd 所代表的字符。9.在创建线程时可以显式地指定线程组,此时可供选择的线程构造方法有( )种。(分数:2.00)A.1B.2C.3 D.4解析:解析 线程组是由 java.lang 包中的 ThreadGroup 类实现的。在创建线程时可以显式地指定线程组,此时
21、需要从如下三种线程构造方法中选择一种:public Thread(ThreadGroup group,Runnable target);public Thread(ThreadGroup group,String name);public Thread(Thread(Group group,Runnable target,Strmg name)。10.下面程序段的输出结果为( )。package test;public class ClassAint x=20;static int y=6;public static void main(String args)ClassB b=new Cla
22、ssB();b.go(10);System.out.println(“x=“+b.x);class ClassBint x;void go(int y)ClassA a=new ClassA();x=a.y;(分数:2.00)A.x=10B.x=20C.x=6 D.编译不通过解析:解析 本题考查在 Java 中静态变量(类变量)的用法。在题目程序段中生成了一个 static int y=6 类变量,在 ClassA 中调用的 b.go(10),只不过是在 ClassB 中的一个局部变量,通过调用 ClassB 中的 go 方法可以生成一个 ClassA 对象,并给这个新生成的对象赋以 Clas
23、sA 中的类变量 y 的值。从 main()方法作为入口执行程序,首先生成一个 ClassB 的对象,然后 b.go(10)会调用 ClassA,会给 x 和 y 赋值,x=a.y 后,x 值为 6,再返回去执行 System.out.println(“x=“+b.x)语句,输出为 x=6,可见,正确答案为选项 C。11.Thread 类的方法中用于修改线程名字的方法是( )。(分数:2.00)A.setName() B.reviseName()C.getName()D.checkAccess()解析:解析 Thread 类的其他方法有 setName!()、getName()、activeC
24、ount()和 setDaemon()等。其中,用于修改线程名字的方法是 setName()。12.下列程序的输出结果是( )。public class Testvoid printValue(int m)doSystem.out.println(“The value is“+m)while(-m10)public static void main(String args)int i=10;Test t=new Test();t.printValue(i);(分数:2.00)A.The value is 8B.The value is 9C.The value is 10 D.The valu
25、e is 11解析:解析 此题考查的是 dowhile 循环和“-”操作符的知识。dowhile 最少执行一次,在执行完 do 中的内容后,判断 while 中的条件是否为 true。如果为 true,就再执行 do 中的内容,然后进行判断。以此类推,直到 while 的判断为 false 时退出循环,执行循环后面的内容。而“-”操作符的规则是,变量右边的“-”将先进行运算,然后才使变量的值减-。而在变量左边的“-”,则先将变量的值减 1 再运算。本程序中 i 的值为 10,当程序运行到 dowhile 循环时,程序先执行一次循环,然后判断,因此选 C。13.使用白盒测试法时,确定测试数据应该
26、根据( )和指定的覆盖标准。(分数:2.00)A.程序的内部逻辑 B.程序的复杂结构C.使用说明书D.程序的功能解析:解析 白盒测试是把测试对象看做一个打开的盒子,允许测试人员利用程序内部的逻辑结构及相关信息来设计或选择测试用例,对程序所有的逻辑路径进行测试。14.下列有关数组的叙述中,错误的是( )。(分数:2.00)A.在同一个环境下,数组与内存变量可以同名,两者互不影响 B.可以用一维数组的形式访问二维数组C.在可以使用简单内存变量的地方都可以使用数组元素D.一个数组中各元素的数据类型可以相同,也可以不同解析:解析 整个数组的数据类型为 A(Array),而各个数组元素可以分别存放不同类
27、型的数据。在使用数组和数组元素时,应注意如下问题。在任何能使用简单内存变量的地方都可以使用数组元素。在同一个环境下,数组名不能与简单变量名重复。可以用一维数组的形式访问二维数组。15.“+”运算符的操作数个数是( )。(分数:2.00)A.1 个 B.2 个C.3 个D.4 个解析:解析 本题考查 Java 运算符的概念。程序涉及的数据处理,都是通过运算符和表达式来操作,是程序设计的基础,因此务必掌握。按照操作数的数目划分,运算符可以分为一元运算符:+,-,+,-;二元运算符:+,-,;三元运算符:?:。所以本题正确答案是选项 A。简单地说,就是有几个操作数就是几元运算符;反过来,是几元运算符
28、就有几个操作数。16.下列说法正确的是( )。(分数:2.00)A.共享数据的所有访问都必须作为临界区 B.用 synchronized 保护的共享数据可以是共有的C.Java 中对象加锁不具有可重入性D.对象锁不能返回解析:解析 本题考查对象加锁的相关概念。对于对象加锁的使用有些注意事项。对象的锁在某些情况下可以由持有线程返回,比如当 synchronized 语句块执行完成后;当在 synchronized 语句块中出现异常;当持有锁的线程调用该对象的 walt()方法,由此可见选项 D 说法错误。共享数据的所有访问都必须作为临界区,使用 synchronized 进行加锁控制,选项 A
29、说法正确。用 synchronized 保护的共享数据必须是私有的,选项 B 说法错误。Java 中对象加锁具有可重入性,选项 C 错误。17.下面程序段的输出结果为( )。public class Testint a,b;Test()a=100;b=200;Test(int x,int y)a=x;b=y;public static void main(String args)Test Obj1=new Test(12,45);System.out.println(“a=“+Obj1.a+“b=“+Obj1.b);Test Obj2=new Test();System.out.println
30、(“a=“+Obj2.a+“b=“+Obj2.b);(分数:2.00)A.a=100 b=200a=12 b=45B.a=12 b=45a=100 b=200 C.a=12 b=200a=100 b=45D.a=100 b=45a=12 b=200解析:解析 本题考查构造方法及构造方法重载。Test 类有两个构造方法,即使用了方法重载技术。不带参数的构造方法对类的实例变量进行特定数值的赋值,而带参数的构造方法根据参数对类的实例变量进行赋值。TestObj1=newTest(12,45)语句调用的是 Test(intx,inty),而 TestObj2=newTest()调用的是Test(),注
31、意根据参数个数来区分。18.下列叙述中,错误的是( )。(分数:2.00)A.父类不能替代子类B.子类能够替代父类C.子类继承父类D.父类包含子类 解析:解析 本题考查继承的概念。继承性是面向对象方法的一个重要基本特征,它使代码可重用,可降低程序的复杂性。对一个类的继承也就是构建了一个子类,子类继承了父类的方法和状态,同时还可以向新类中增添新的方法和状态。重点掌握两点:子类方法的访问权限比父类的访问权限高,因此父类不能替代子类,但子类能够代替父类,选项 A 和选项 B 说法正确;子类方法不能产生比父类更多的异常。选项D 为正确答案。19.下面排序算法中,平均排序速度最快的是( )。(分数:2.
32、00)A.冒泡排序法B.选择排序法C.交换排序法D.堆排序法 解析:解析 在各种排序方法中,快速排序法和堆排序法的平均速度是最快的,因为它们的时间复杂度都是 O(nlog2n),其他的排序算法的时间复杂度大都是 O(n2)。20.将 E-R 图转换到关系模式时,实体与实体间的联系可以表示成( )。(分数:2.00)A.属性B.关系 C.键D.域解析:解析 将 E-R 图转换成指定 DBMS 中的关系模式是数据库逻辑设计的主要工作。从 E-R 图到关系模式的转换是比较直接的,实体和联系都可以表示成关系。21.下列属于合法的 Java 标识符的是( )。(分数:2.00)A._cat B.5boo
33、ksC.+staticD.-3.14159解析:解析 本题考查 Java 标识符的命名规则,是考试的重点内容。Java 中标识符的命名规则是标识符以字母、下画线或美元符作为首字符的字符串序列;标识符是区分大小写的;标识符的字符数没有限制。由此可见,Java 中标识符不能以数字开头,所以选项 B 错误,不能以“+”开头,选项 C 错误,不能以“-”开头,选项 D 错误,只有选项 A 是正确答案。22.关系数据库管理系统能实现的专门关系运算包括( )。(分数:2.00)A.排序、索引、统计B.选择、投影、连接 C.关联、更新、排序D.显示、打印、制表解析:解析 关系数据库管理系统的专门关系运算包括
34、选择运算、投影运算和连接运算。23.软件需求分析一般应确定的是用户对软件的( )。(分数:2.00)A.功能需求B.非功能需求C.性能需求D.功能需求和非功能需求 解析:解析 软件需求分析中需要构造一个完全的系统逻辑模型,理解用户提出的每一功能与性能要求,使用户明确自己的任务。因此,需求分析应确定用户对软件的功能需求和非功能需求。24.下列组件不能添加进 Frame 主窗口的是( )。(分数:2.00)A.PanelB.CheckBoxC.Dialog D.Choice解析:解析 本题考查对 Java 组件容器中添加容器的基本知识。选项 A 错误,Panel 组件是容器,可以添加到 Frame
35、 窗口;选项 B 错误,CheckBox 组件是复裖蜃榧 梢蕴砑拥紽 rame 窗口;选项 C 正确,Dialog 继承自 Windows 类,Windows 类型(或子类)的对象不能包含在其他容器中;选项 D 错误,Choice组件是选择框组件,可以添加到 Frame 窗口。25.下列描述异常含义的各选项中,正确的是( )。(分数:2.00)A.程序编译错误B.程序语法错误C.程序自定义的异常事件D.程序编译或运行时发生的异常事件 解析:解析 异常是在程序编译或者运行时所发生的可预料或者不可预料的异常事件,它会引起程序的中断,影响程序的正常运行。26.在文件类提供的方法中,用于创建目录的方法
36、是( )。(分数:2.00)A.mkdir() B.mkdirs()C.list()D.listRoots()解析:解析 本题考查文件类提供的方法。mkdir()是为目录操作提供的方法,用来创建目录;mkdirs()也是为目录操作提供的方法,创建包含父目录的目录;list()是对文件名操作提供的方法,返回一个字符串数组,为该文件所在目录下的所有文件名列表;listRoots 是为目录提供的方法,返回根目录结构。由此可见,只有选项 A 满足题目要求。27.下列叙述中,正确的是( )。(分数:2.00)A.Java 语言的标识符是区分大小写的 B.源文件名与 public 类名可以不相同C.源文件
37、的扩展名为.jarD.源文件中 public 类的数目不限解析:解析 本题考查考生对 Java 语言概念的理解。这些属于考试重点内容。Java 语言和 C 语言不同,它是区分大小写的,选项 A 正确。Java 程序的源文件扩展名为.class,.jar 文件是由归档工具 jar 生成的。源文件中的 public 类的数目只能有 0 个或 1 个,用来指定应用程序类名,也是源文件名。28.一个 Java Application 运行后,在系统中是作为一个( )。(分数:2.00)A.线程B.进程 C.进程或线程D.不确定解析:解析 线程为一个程序中的单个执行流;进程是程序的一次动态执行过程,它对
38、应了从代码加载、执行到执行完毕的一个完整过程,这个过程也是进程本身从产生、发展到消亡的过程。一个JavaApplication 运行后,在系统中应该就是一个进程了(动态)。29.有下列二叉树,对此二叉树前序遍历的结果为( )。(分数:2.00)A.B. C.D.解析:解析 二叉树的前序遍历是指,先访问根结点,再访问左子树,最后访问右子树。并且在访问左右子树时,也是先访问其根结点,再访问左右子树。30.下列说法中,不属于数据模型所描述的内容是( )。(分数:2.00)A.数据结构B.数据操作C.数据查询 D.数据约束解析:解析 数据模型所描述的内容包括三个部分,它们是数据结构、数据操作和数据约束
39、。其中,数据结构主要描述数据的类型、内容、性质及数据库的联系等;数据操作主要是描述在相应数据结构上的操作类型与操作方式;数据约束主要描述数据结构内数据间的语法和语义联系,它们之间的制约与依存关系,以及数据的动态变化的规则,以保证数据的正确、有效与相容。31.在 switch(expression)语句中,expression 的数据类型不能是( )。(分数:2.00)A.double B.charC.byteD.short解析:解析 本题考查考生对 switch(expression)语句的理解。表达式 expression 只能返回int、byte、shott 和 char,题目中的 dou
40、ble 是不正确的。同时还要注意,多分支结构中,case 子句的值必须是常量,而且所有 case 子句中的值应是不同的,default 子句是任选的。32.已知:inta=newint100;在下列给出的数组元素中,非法的是( )。(分数:2.00)A.a0B.a1C.a99D.a100 解析:解析 本题考查 Java 中数组的概念。对于数组的掌握,不能仅仅停留在概念上,更多的是能将所学的知识灵活运用。inta=new int100定义了一个数组 a,含有 100 个整型元素。在 Java 中,数组元素的下标是从 0 开始的,因此上面定义的数组实际上下标是 099,所以选项 D 错误。33.在
41、 Java 中,由 Java 编译器自动导入而无需在程序中用 import 导入的包是( )。(分数:2.00)A.java.appletB.java.awtC.java.utilD.java.lang 解析:解析 本题考查 Java 中包的概念。Java 中用 import 语句来导入包,但需注意的是,Java 语言中的 java.lang 包是由编译器直接自动导入的,因此,编程时使用该包中的类,可省去 import 导入。使用其他包中的类,必须用 import 导入,选项 D 为正确答案。34.要串行化某些类的对象,这些类必须实现( )。(分数:2.00)A.Serializable 接口
42、 B.java.io.Exceptionlizable 接口C.java.io.Datalnput 接口D.DataOutput 接口解析:解析 Java 语言中一个类只有实现 Serializable 接口,它的对象才是可串行化的。35.在 Java Applet 程序中,如果对发生的事件做出响应和处理的时候,应该使用下列( )语句。(分数:2.00)A.import java.awt.event.*;B.import java.io.*;C.import java.awt.*; D.import java.applet.*;解析:解析 本题考查对 Java 常用的各种包所包含的一些类的基本
43、功能的理解。java.awt 包是抽象窗口工具包,里面包括各种容器、组件、窗口布局管理器以及一些常用的类如 Color、Font 等,选项 A 满足题意。而 java.applet 包里面包括了小程序执行时必须要重载的一个类 Applet,也就只有这一个类,选项 D 错误。java.io 包主要是提供一些输入/输出类的,选项 B 不满足题意。java.awt.event 包就包含了一些能够对事件做出响应和处理的一些标准类,选项 C 不满足题意。二、填空题(总题数:15,分数:30.00)36.关系操作的特点是 1 操作。(分数:2.00)填空项 1:_ (正确答案:集合)解析:解析 在关系数据
44、库中,把数据表示成二维表,每一个二维表称为关系,因此关系其实是数据的集合,对关系的操作其实就是对数据组成的集合之间的操作。37.按照逻辑结构分类,结构可以分为线性结构和非线性结构,栈属于 1。(分数:2.00)填空项 1:_ (正确答案:线性结构)解析:解析 数据的逻辑结构分为线性结构和非线性结构。常见的线性结构有线性表、栈和队列等,常见的非线性结构有树、二叉树等。38.一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的 1。(分数:2.00)填空项 1:_ (正确答案:可重用性)解析:解析 继承是实现代码重用的重要机制。使用继承可以不需要从头开始创建新类,可以在现有的
45、基础上添加新的方法和属性,节约时间和精力,大大提高效率。39.在面向对象程序设计中,从外面看只能看到对象有外部特征,而不知道也无须知道数据的具体结构以及实现操作的算法,这称为对象的 1。(分数:2.00)填空项 1:_ (正确答案:封装性)解析:解析 对象具有 5 个特点:标识唯一性、分类性、多态性、封装性和模块独立性。其中,封装性是指从外面看只能看到对象的外部特征,对象的内部特征即处理能力的实行和内部状态,对外是不可见的,对象的内部状态只能由其自身改变。40.在一个容量为 32 的循环队列中,若头指针 front=3,尾指针 rear=2,则该循环队列中共有 1 个元素。(分数:2.00)填
46、空项 1:_ (正确答案:31)解析:解析 设队列容量为 m,rearfront,则队列中元素个数为 rearfront:rearfront,则队列中元素个数为 m+(rear-front)。本题 rearfront,则 m=32+(2-3)=31。41.Java 中的方法的参数传递是 1 调用。(分数:2.00)填空项 1:_ (正确答案:传值)解析:解析 本题考查 Java 中方法的参数传递。Java 中的方法的参数传递是传值调用,而不是地址调用,方法不能改变参数值,但可以改变变量值,两个对象之间的参数字段不能相互交换。42.Java 语言中如果要使用某个包中的类时,需要使用 1 导入。(
47、分数:2.00)填空项 1:_ (正确答案:import)解析:解析 本题考查包的导入和使用。首先用 package 语句说明一个包,该包的层次结构必须与文件目录的层次相同,否则,在编译时可能出现找不到包的问题。Java 语言中 java.lang 包是编译器自动导入,其他包中的类必须用 import 导入。43.执行下面的程序段,输出结果为_。public class Qpublic static void main(String argv)int anar=new int5;System.out.println(anar0);(分数:2.00)填空项 1:_ (正确答案:0)解析:解析 本题考查 Java 中数组的定义和初始化。在该方法里定义并动态初始化了一个整型数组anar,由于没有赋初值,系统默认的初始值是数组中的每个元素都为零。所以输出数组中的第一个元素anar0时,自然也是等于零。44.一个具体的线程是由 1、代码和数据组成的。(分数:2.00)填空项 1:_ (正确答案:虚拟的 CPU)解析:解析 本题考查线程的概念。一个具体的线程是由虚拟的 CPU、代码和数据组成的。其中代码与数据构成了线程体,线程的行为由线程体决定。虚拟的 C
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1