1、二级 JAVA 笔试-120 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.下列关于正则表达式的说法中,不正确的是_。(分数:2.00)A.J2SE1.4 中的正则表达式包中有一个 Pattern 类B.J2SE1.4 中的正则表达式包中有一个 Matcher 类C.J2SE1.4 中的正则表达式包名称为 java.util.regexD.以上说法都不正确2.在 Java Applet 程序中,如果对所发生的事件做出响应和处理,应该使用下列哪一条语句?(分数:2.00)A.import java.awt.event.*;B.import
2、java.io.*;C.import java.awt.*;D.import java.applet.*;3.结构化程序设计只允许由 3 种基本结构来构成任何程序。下列选项中,_不是结构化程序设计的基本结构。(分数:2.00)A.选择结构B.可选结构C.循环结构D.顺序结构4.下列选项中,属于 Java 语言的垃圾回收机制的是_。(分数:2.00)A.语法检查B.堆栈溢出检查C.跨平台D.内存跟踪5.下面哪一个关键字通常用来对对象加锁,从而使得对对象的访问是排他的?_(分数:2.00)A.serializeB.transientC.synchronizedD.static6.设有二叉树:对此二
3、叉树执行中序遍历的结果是_。(分数:2.00)A.B.C.D.7.Java 程序与数据库的连接机制是_。(分数:2.00)A.ODBCB.JDBCC.ODBC APID.SQL/CLI8.当查询一个压缩文件时,首先要建立压缩文件输入流的对象是_。(分数:2.00)A.以选中的压缩文件为参数B.以 FileInputStream 对象为参数C.以 InputStreamReader 对象为参数D.以 BufferedReader 对象为参数9.下列关于 Java 语言的说法中,正确的是 v。(分数:2.00)A.可以有两条以上 package 语句B.可以有两条以上 import 语句C.可以有
4、两个以上 public 类D.只有一个类定义10.关系数据库管理系统应实现的专门的关系运算包括_。(分数:2.00)A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表11.对于存储同样一组数据元素而言,_。(分数:2.00)A.顺序结构比链接结构更易于扩充空间B.顺序结构与链接结构相比,更有利于对元素进行插入和删除运算C.顺序结构占用整块空间,而链接结构不要求占用整块空间D.顺序结构比链接结构占据更多的存储空间12.下列说法中,正确的是_。(分数:2.00)A.类 FileInputStream 和 FileOutputStream 用来进行文件 I/O 处理,由
5、其所提供的方法可以打开本地主机上的文件,并进行顺序读/写B.通过类 File 的实例或者一个表示文件名的字符串可以生成文件输入/输出流,在生成流对象的同时,文件被打开,但不能进行文件读/写C.对于 InputStream 和 OutputStream 来说,其实例都是非顺序访问流,即只能顺序读/写D.当从标准输入流读取数据时,从键盘所输入的数据直接输入程序中13.在 Java 中,所有类的根类是_。(分数:2.00)A.java.lang.ObjectB.java.lang.ClassC.java.lang.StringD.java.lang.System14.下面关于 Applet 的说法中
6、,正确的是_。(分数:2.00)A.Applet 也需要 main( )方法B.Applet 继承自 java.awt.Applet 或 javax.swing.JAppletC.Applet 能访问本地文件D.Applet 程序不需要编译15.下面的程序执行后,屏幕上应显示_。public class Testpublic static void main(String args)char char1 =t,e,s,t;char char2 =t,e,s,t,1;String s1=new String(char1);String s2=new String(char2,0,4);Syste
7、m.out.println(s1.equals(s2);(分数:2.00)A.trueB.falseC.testD.编译错误16.算法的时间复杂度是指_。(分数:2.00)A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程中所需要的基本运算次数D.算法程序中的指令的条数17.假设有 String a=“A:;char=A;int c=65,选项_是正确的。(分数:2.00)A.if(a=b)System.out.print(“Equal“)B.if(c=b)System.out.print(“Equal“)C.if(a=c)System.out.print(“Equal“)D.以上
8、均不正确18.下列关于内部类的说法中,正确的是_。(分数:2.00)A.内部类可以与包含它的类名相同B.内部类只能使用其所在类的静态成员变量,不能使用其所在类的方法中的局部变量C.内部类可以用 abstract 修饰定义为抽象类,不能用 private 或 protected 定义D.外部使用内部类时,必须给出类的全名19.下列叙述中,正确的是_。(分数:2.00)A.Reader 是一个读取字符文件的接口B.Reader 是一个读取数据文件的抽象类C.Reader 是一个读取字符文件的抽象类D.Reader 是一个读取字节文件的一般类20.计算机算法是指解决问题的有限运算序列,它具备_和足够
9、的信息。(分数:2.00)A.可行性、可移植性、可扩充性B.易读性、稳定性、安全性C.确定性、有穷性、稳定性D.可行性、确定性、有穷性21.下列程序段的输出结果是_。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(
10、“a=“+Obj1.a+“b=“+Obj1.B);(分数:2.00)A.a=100 b=200a=12 b=45B.a=12 b=45a=100 b=200C.a=12 b=200a=100 b=45D.a=100 b=45a=12 b=20022.下列对于关系运算的叙述中,正确的是_。(分数:2.00)A.投影、选择、连接是从二维表的行的方向所进行的运算B.并、交、差是从二维表的列的方向所进行的运算C.投影、选择、连接是从二维表的列的方向所进行的运算D.以上 3 种说法都不对23.信息隐蔽的概念与下述哪一种概念直接相关?_(分数:2.00)A.软件结构定义B.模块独立性C.模块类型划分D.模
11、块耦合度24.下面程序段的输出结果是_。public class Testpublic static void main(String args )int a=new int11;int p=new int4;int k=5;for(int i=1;i=10;i+)ai=i;for(int i=1;i=3;i+)pi=ai*i;for(int i=1;i=3;i+)k=k+pi*2;System.out.println(k);(分数:2.00)A.37B.31C.33D.3525.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是_。(分数:2.00)A.概要设计B.详
12、细设计C.可行性设计D.需求分析26.下列代码中,将引起编译错误的行是_。(1) public class Test (2) int m,n;(3) public Test( )(4) public Test(int(分数:2.00)A.m=a;(5) public static void main(String args )(6) Test t1,t2;(7) int j,k;(8) j=0;k=0;(9) t1=new Test( );(10) t2=new Test(j,k);(11) 1(12) A) 第 3 行B.第 5 行C.第 6 行D.第 10 行27.执行下面的程序后,输出的
13、结果是_。public class Testpublic static void main(String args )byte x=3,y=4;long r=80L;System.out.print(r/y);System.out.print(“,“);System.out.print(x/y);(分数:2.00)A.20.0,1B.20.0,2.0C.20,0D.20,1.028.下面不属于软件工程 3 个要素的是_。(分数:2.00)A.工具B.过程C.方法D.环境29.下列组件中,不能添加进 Frame 主窗口的是_。(分数:2.00)A.PanelB.CheckBoxC.DialogD
14、.Choice30.查找随机文件的记录时,所应使用的方法是_。(分数:2.00)A.readInt( )B.readBytes(int n)C.seek(long l)D.readDouble( )31.下列成员变量声明中,正确的是_。(分数:2.00)A.public protected final int i;B.abstract class F1C.private double height;D.double weight32.下列关于 Applet 的说法中,正确的是_。(分数:2.00)A.它们能读/写用户的文件系统B.它们能与提供包含小程序的网页站点在内的 Internet 站点联
15、系C.它们能在阅读者的系统上运行任何程序D.它们能加载存储在用户系统中的程序33.设 a=8,则表达式 a1 的值是_。(分数:2.00)A.1B.2C.3D.434.下列关于线程和进程的说法中,正确的是_。(分数:2.00)A.进程结构的所有成分都在用户空间中B.用户程序能够直接访问进程所涉及的数据C.线程是内核级的实体D.线程结构驻留在用户空间中35.在 Java 中,线程是_。(分数:2.00)A.分时的B.抢占式的C.非抢占式的D.非分时的二、填空题(总题数:15,分数:30.00)36.在长度为 n 的有序线性表中进行二分查找,所需要的比较次数为 1。(分数:2.00)填空项 1:_
16、37.对 n 条记录的文件进行快速排序,最坏情况下的执行时间为 1。(分数:2.00)填空项 1:_38.类是一个支持集成的抽象数据类型,而对象是类的 1。(分数:2.00)填空项 1:_39.软件是程序、数据和相关 1 的集合。(分数:2.00)填空项 1:_40.在关系模型中,把数据看成一个二维表,每个二维表称为一个 1。(分数:2.00)填空项 1:_41.Java 语言用 1 进行解释执行。(分数:2.00)填空项 1:_42.在一个类的内部嵌套定义的类称为 1。(分数:2.00)填空项 1:_43.设有数组定义:int a =11,22,33,44,55,66,77,88,99;则执
17、行下列几条语句后的输出结果是 _。for(int i=0;ia.length;i+)if(ai%3=0)System.out.println(ai+“ “);(分数:2.00)填空项 1:_44.下面程序的运行结果是_。import java.io.*;public class ABCpublic static void main(String args )int i;int a =11,22,33,44,55,66,77,88,99;for(i=0;i=a.length/2;i+)System.out.print(ai+aa.length-i-1+“ “);(分数:2.00)填空项 1:_4
18、5.URL 是 1 的缩写。(分数:2.00)填空项 1:_46. 1 日历类提供日期和时间的表示,它以格列高利历(即阳历)来计算。(分数:2.00)填空项 1:_47.若 x=5,y=5,则 xyi+)ai=i;for(int i=1;i=3;i+)pi=ai*i;for(int i=1;i=3;i+)k=k+pi*2;System.out.println(k);(分数:2.00)A.37B.31C.33 D.35解析:解析 题中共定义了两个数组:a 和 p ,共用了 3 个 for 循环。第 1 个 for 循环语句对数组ai赋值;第 2 个 for 循环语句对数组 Pi赋值;第 3 个
19、for 循环语句计算 k 的值。正确答案为选项 C。25.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是_。(分数:2.00)A.概要设计B.详细设计C.可行性设计D.需求分析 解析:解析 可行性设计阶段要求确定待开发软件系统的开发目标和总体要求,给出其功能、性能、可靠性以及接口等方面的方案,制定完成开发任务的实施计划。需求分析阶段要求对待开发软件所提出的需求进行分析并给出详细的定义。26.下列代码中,将引起编译错误的行是_。(1) public class Test (2) int m,n;(3) public Test( )(4) public Test(int
20、(分数:2.00)A.m=a;(5) public static void main(String args )(6) Test t1,t2;(7) int j,k;(8) j=0;k=0;(9) t1=new Test( );(10) t2=new Test(j,k);(11) 1(12) A) 第 3 行B.第 5 行C.第 6 行D.第 10 行 解析:解析 第 10 行代码中的参数数目比类 Test 的任何一个构造方法所声明的形式参数都多,因此引起编译错误。在调用构造函数时,必须严格按照它在类中定义的形式使用,包括参数个数和数据类型等,否则将引起编译错误。27.执行下面的程序后,输出的
21、结果是_。public class Testpublic static void main(String args )byte x=3,y=4;long r=80L;System.out.print(r/y);System.out.print(“,“);System.out.print(x/y);(分数:2.00)A.20.0,1B.20.0,2.0C.20,0 D.20,1.0解析:解析 在二元算术运算中,两个操作数全是整型,只要其中一个是 long 型,表达式结果就是long 型;两个操作数全是 byte 型或 short 型,表达式结果是 int 型;两个操作数是浮点型,只要其中一个为
22、double 型,则表达式结果为 double 型,否则为 float 型。从计算结果和数据类型来看,只有选项C 是正确的。28.下面不属于软件工程 3 个要素的是_。(分数:2.00)A.工具B.过程C.方法D.环境 解析:解析 软件工程包括 3 个要素,即方法、工具和过程。29.下列组件中,不能添加进 Frame 主窗口的是_。(分数:2.00)A.PanelB.CheckBoxC.Dialog D.Choice解析:解析 Panel 组件是容器,可以添加到 Frame 窗口。CheckBox 组件是复选框组件,可以添加到Frame 窗口。Choice 组件是选择框组件,可以添加到 Fra
23、me 窗口。而 Dialog 继承自 Window,Window 类型的对象不能包含在其他容器中,所以选项 C 正确。30.查找随机文件的记录时,所应使用的方法是_。(分数:2.00)A.readInt( )B.readBytes(int n)C.seek(long l) D.readDouble( )解析:解析 文件操作中经常需要进行随机访问,Java 中的 RandomAccessFile 类提供随机访问文件的功能,其中的 seek( )方法实现了查找随机文件记录的功能,其格式如下:void seek(long pos);用于移动文件指针到指定的位置。31.下列成员变量声明中,正确的是_。
24、(分数:2.00)A.public protected final int i;B.abstract class F1C.private double height; D.double weight解析:解析 成员变量的修饰符可以是public、protected、private、static、final、transient、volatile 等,选项 A 错误。成员变量不能同时声明成 public 和 protected。选项 B 是类的声明格式,并不是成员变量的声明。成员变量声明应以“;”结束,选项 D 不正确。选项 C 声明一个私有的 double 型成员变量,此为正确答案。32.下列关
25、于 Applet 的说法中,正确的是_。(分数:2.00)A.它们能读/写用户的文件系统B.它们能与提供包含小程序的网页站点在内的 Internet 站点联系C.它们能在阅读者的系统上运行任何程序D.它们能加载存储在用户系统中的程序 解析:解析 因为 Java 小程序运行在 Web 用户的系统上,它们不能读/写用户的文件系统,选项 A 不正确。它们不能与提供包含小程序的网页站点之外的 Internet 站点联系,选项 B 的说法不正确。它们不能在阅读者的系统上运行任何程序,选项 C 说法错误。33.设 a=8,则表达式 a1 的值是_。(分数:2.00)A.1B.2C.3D.4 解析:解析 无
26、符号右移运算符,也称为逻辑右移,用于将一个数的各二进制位全部无符号右移若干位,与运算符不同的是左补 0,而则是最高位移入原来高位的值。8 的二进制数表示是1000,右移一位后变成了 0100,对应的十进制数是 4。可见,正确答案是 D。34.下列关于线程和进程的说法中,正确的是_。(分数:2.00)A.进程结构的所有成分都在用户空间中B.用户程序能够直接访问进程所涉及的数据C.线程是内核级的实体D.线程结构驻留在用户空间中 解析:解析 线程与进程在概念上是相关的。线程不包括进程地址空间中的代码和数据,线程是计算过程在某一时刻的状态。进程是一个内核级的实体,一个用户程序不能直接访问这些数据。线程
27、是一个用户级的实体,能够被普通的用户级方法直接访问。35.在 Java 中,线程是_。(分数:2.00)A.分时的B.抢占式的 C.非抢占式的D.非分时的解析:解析 Java 的线程调度策略是一种基于优先级的抢占式调度,选项 B 正确。Java 这种抢占式调度可能是分时的,即每个等待池中的线程轮流执行,也可以不是,即线程逐个运行。具体采用哪种方式,由具体的 JVM 而定。线程一般通过 sleep( )等方法保证为其他线程运行事件。二、填空题(总题数:15,分数:30.00)36.在长度为 n 的有序线性表中进行二分查找,所需要的比较次数为 1。(分数:2.00)填空项 1:_ (正确答案:lo
28、g 2n)解析:解析 对于长度为 n 的有序线性表,在最坏情况下,二分查找只需要比较 log2n 次,而顺序查找需要比较 n 次。37.对 n 条记录的文件进行快速排序,最坏情况下的执行时间为 1。(分数:2.00)填空项 1:_ (正确答案:O(n 2))解析:解析 快速排序法的时间复杂度与每次划分的结果有关。如果每次划分的两个子表长度都相等,则时间复杂度最小为 O(log2n);如果每次划分的结果总有一个子表的长度为 0,则时间复杂度最大为 O(n2)。38.类是一个支持集成的抽象数据类型,而对象是类的 1。(分数:2.00)填空项 1:_ (正确答案:实例)解析:解析 类是对象的抽象,它
29、描述了属于此对象类型的所有对象的性质,而一个对象则是其对应类的实例。39.软件是程序、数据和相关 1 的集合。(分数:2.00)填空项 1:_ (正确答案:文档)解析:解析 计算机软件是包括程序、数据及相关文档的完整集合。40.在关系模型中,把数据看成一个二维表,每个二维表称为一个 1。(分数:2.00)填空项 1:_ (正确答案:关系)解析:解析 在关系模型中,把数据看成一个二维表,每一个二维表称为一个关系。表中的每一列称为一个属性,相当于记录中的一个数据项。对属性的命名称为属性名。表中的一行称为一个元组,相当于记录值。41.Java 语言用 1 进行解释执行。(分数:2.00)填空项 1:
30、_ (正确答案:字节码)解析:解析 Java 语言是用字节码进行解释执行的,它本身带有编译时所产生的许多信息,可使其连接过程更简单。42.在一个类的内部嵌套定义的类称为 1。(分数:2.00)填空项 1:_ (正确答案:内部类)解析:解析 内部类是嵌套于一个类的内部使用的,与普通类一样,内部类也有自己的成员变量和成员方法。43.设有数组定义:int a =11,22,33,44,55,66,77,88,99;则执行下列几条语句后的输出结果是 _。for(int i=0;ia.length;i+)if(ai%3=0)System.out.println(ai+“ “);(分数:2.00)填空项
31、1:_ (正确答案:33 66 99)解析:解析 此题结果是输出数组中能被 3 整除的元素值。a.length 可以求出数组 a 的元素个数。44.下面程序的运行结果是_。import java.io.*;public class ABCpublic static void main(String args )int i;int a =11,22,33,44,55,66,77,88,99;for(i=0;i=a.length/2;i+)System.out.print(ai+aa.length-i-1+“ “);(分数:2.00)填空项 1:_ (正确答案:110110110110110)解析
32、:解析 题中 a.length/2 的值应为 4,所以 for 循环执行了 5 次。第一次输出的是元素 a0与 a8的和;第二次输出的是元素 a1与 a7的和;第三次输出的是元素 a2与 a6的和;第四次输出的是元素a3与 a5的和;第五次输出的是元素 a4与 a(4的和。所以结果是 5 个 110。45.URL 是 1 的缩写。(分数:2.00)填空项 1:_ (正确答案:统一资源定位地址)解析:解析 URL 是统一资源定位地址(Uniform Resource Locator)的简称,它表示 Internet 上某一资源的地址。46. 1 日历类提供日期和时间的表示,它以格列高利历(即阳历
33、)来计算。(分数:2.00)填空项 1:_ (正确答案:GregorianCalendar)解析:解析 GregorianCalendar 是以格列高利历(即阳历)来计算的日历类。47.若 x=5,y=5,则 xy&x+=y-的逻辑值为 1。(分数:2.00)填空项 1:_ (正确答案:true)解析:解析 此题主要是考查运算符的优先级。首先参与运算的是+和-两个运算符,然后是运算符,接着是=运算符(x 自加与 y 自减之前的值参与此运算),最后是&运算符。xy&x+ +=y-等价于(xy)&(x+)=(y-)。48.关于文件名的处理,测试当前文件是否是目录用 1 函数。(分数:2.00)填空
34、项 1:_ (正确答案:boolean isDirectory-|_|-)解析:解析 isDirectory-|_|-方法检测本 File 对象所代表的是否是一个目录。如果存在并且是一个目录则返回 true;否则返回 false。49.Java 中的访问限定符有 1、protected、private 和 default 等。(分数:2.00)填空项 1:_ (正确答案:public)解析:解析 修饰符可分为访问限定符和非访问限定符两类。访问限定符有 public、 protected、private 和 default 等。其他都属于非访问限定符,有 static、final、abstract 和synchronized 等。50.当生成 StringBuffer 的一个对象后,还可用 1 方法或 ensureCapacity2 方法来设定缓存大小。(分数:2.00)填空项 1:_ (正确答案:setLength-|_|-)解析:解析 此题考查 StringBuffer 字符串的相关知识,生成 StringBuffer 的一个对象后,可用setLength-|_|-或 ensureCapacity-|_|-方法设定缓存大小,并保证其数组元素的初值均为 0。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1