1、计算机二级 JAVA 分类模拟题 191 及答案解析(总分:57.40,做题时间:90 分钟)一、选择题(总题数:35,分数:57.40)1.数据库应用系统中的核心问题是_。(分数:1.80)A.数据库设计B.数据库系统设计C.数据库维护D.数据库管理员培训2.设某循环队列的容量为 50,如果头指针 front=45(指向队头元素的前一位置),尾指针 rear=10(指向队尾元素),则该循环队列中共有元素个数为_。(分数:1.80)A.5B.15C.35D.403.下列关于 Java Application 与 Applet 的说法中,正确的是_。(分数:1.00)A.都包含 main()方法
2、B.都通过“appletviewer”命令执行C.都通过“javao”命令编译D.都嵌入在 HTML 文件中执行4.下列不是 InputStream 子类的是 _ 。(分数:2.00)A.文件输入流 FileInputStreamB.对象输入流 ObjectInputStreamC.字符输入流 CharInputStreamD.压缩文件输入流 ZipInputStream5.下面程序的输出结果是_。 public class exl public static void main(String args) for(int cnt=0;cnt10,;cnt+) if(cnt=5) break;
3、System.out.print(cnt); (分数:2.00)A.01234B.012346789C.6789D.56.当按 Tab 键以离开文本框时,将激发_事件。(分数:2.00)A.FocusEventB.WindowEventC.ActionEventD.以上都不对7.下列叙述中正确的是_。(分数:1.80)A.在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化B.在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化C.在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化D.上述三种说法都不对8.J2EE 有强大的服务功能,但不包括 _ 。(分数:2.00)A.命名服务 I
4、NDI(LDAP)B.YIGA 投递服务C.部署服务、消息服务 IMSD.安全服务9.算法的时间复杂度是指_。(分数:1.80)A.算法的执行时间B.算法所处理的数据量C.算法程序中的语句或指令条数D.算法在执行过程中所需要的基本运算次数10.下列语句中执行跳转功能的语句是_。(分数:2.00)A.for 语句B.while 语句C.continue 语句D.switch 语句11.下列构造方法的调用方式中,正确的是 _ 。(分数:2.00)A.按照一般方法调用B.由用户直接调用C.只能通过 new 自动调用D.被系统调用12.下列对队列的描述中正确的是_。(分数:2.00)A.队列属于非线性
5、表B.队列按“先进后出”原则组织数据C.队列在队尾删除数据D.队列按“先进先出”原则组织数据13.在 Java 类库中,提供构建和管理用户图形界面功能,封装抽象窗口的包是 _ 。(分数:1.00)A.javautil 包B.javabean 包C.javaawt 包D.javarmi 包14.下列关于队列的叙述中,正确的是_。(分数:2.00)A.在队列中只能插入数据B.在队列中只能删除数据C.队列是先进先出的线性表D.队列是先进后出的线性表15.下列代码的执行结果是_。 int numbers=new int6; for(int i=1; inumbers. length; i+) numb
6、ersi=i-1; System. out. print(numbersi+“);(分数:1.80)A.0 1 2 3 4 5B.1 2 3 4 5 6C.0 1 2 3 4D.1 2 3 4 516.已知 zipname 是一个压缩文件名。则 zipname 在下列代码中出现的正确位置是_。 ZipInputStream zin= new ZipInputStzeam(new FileInputStream(); ZipEntry entry; while(entry=zin. getNextEntry()!=null) fileCombo. addItem(entry. getName()
7、; zin. closeEntry(); zin. close();(分数:1.80)A.B.C.D.17.下列程序的运行结果是_。 public class Test public static void main(String args) intm=new int1,2,3,4,5,6,7,8; int sum=0; for(int i=0;i8;i+) sum+=mi; if(i=3)break; System.out.println(sum); (分数:1.00)A.3B.6C.10D.3618.按 Java 语言规则,下列赋值语句中不合法的是_。(分数:2.00)A.float a=
8、2.0B.double b=2.0C.int c=2D.long d=2L19.下列属于合法的 Java 标识符是_。(分数:1.80)A.“ABC“B. public static void main(String args) Thread tt=new Thread(new Test(); tt.start(); 代码运行结果是_。(分数:1.00)A.将抛出一个异常B.没有输出并正常结束C.输出“Running“并正常结束D.程序第 2 行将出现一个编译错误24.Java 为移动设备提供的平台是_。(分数:2.00)A.J2MEB.J2SEC.J2EED.JDK 5.025.下列程序的运
9、行结果是_。 public classMyTest public static void main(String args) int sum=1; for(int j=1;j5;j+) sum*=j; System.out.println(sum); (分数:1.00)A.1B.10C.24D.12026.算法的时间复杂度是指_。(分数:1.00)A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程中所需要的基本运算次数D.算法程序中的指令条数27.按照“先进先出”原则组织数据的结构是_。(分数:2.00)A.队列B栈C.双向链表D.二叉树28.能够写内存的类是_。(分数:1.00)
10、A.FileOutputStreanB.PringtWriterC.ByteArrayOutputStreamD.StringWriter29.线程交互中不提倡使用的方法是(分数:1.00)A.wait()B.notify()C.stop()D.notifyAll()30.下列安全控制命令中,哪个是显示证书缓存区和密钥表项的命令?(分数:1.00)A.policytoolB.kinitC.klistD.ktab31.软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是_。(分数:1.80)A.编辑程序B.操作系统C.教务管理系统D.汇编程序32.下列叙述中,错误的
11、是_。(分数:2.00)A.JButton 类和标签类可显示图标和文本B.Button 类和标签类可显示图标和文本C.AWT 构件能直接添加到顶层容器中D.Swing 构件不能直接添加到顶层容器中33.阅读如下程序。 public class Test2 public static void main(String args) int a=10,b=4,c=20,d=6; System.out.println(a+*b+c*-d); 程序运行结果是_。(分数:2.00)A.144B.160C.140D.16434.在 HTML 页中可包含 Applet,关于 Applet 的参数,以下说法错误
12、的是 _ 。(分数:1.00)A.Applet 获取参数是通过在 HTML 文件中采用PARAM标记定义参数B.参数的名字是区分大小写的C.Applet 通过命令行将参数传给 main()方法D.参数允许用户定制 Applet 的操作35.需求分析阶段最后提供的文档是软件的_。(分数:2.00)A.功能说明书B.加工说明书C.可行性分析报告D.需求规格说明书计算机二级 JAVA 分类模拟题 191 答案解析(总分:57.40,做题时间:90 分钟)一、选择题(总题数:35,分数:57.40)1.数据库应用系统中的核心问题是_。(分数:1.80)A.数据库设计 B.数据库系统设计C.数据库维护D
13、.数据库管理员培训解析:解析 数据库设计的目的是设计一个能满足用户要求,性能良好的数据库。所以数据库设计的核心是数据库应用。2.设某循环队列的容量为 50,如果头指针 front=45(指向队头元素的前一位置),尾指针 rear=10(指向队尾元素),则该循环队列中共有元素个数为_。(分数:1.80)A.5B.15 C.35D.40解析:解析 队列个数=rear-front+容量。3.下列关于 Java Application 与 Applet 的说法中,正确的是_。(分数:1.00)A.都包含 main()方法B.都通过“appletviewer”命令执行C.都通过“javao”命令编译 D
14、.都嵌入在 HTML 文件中执行解析:解析 Applet 与 Application 的主要区别在执行方式上。Application 以 main()方法为入口点运行,Applet 要在浏览器或 Appletviewer 中运行,运行过程比 Application 更复杂。两者都是通过“javac”命令编译,所以只有选项 C 说法正确。4.下列不是 InputStream 子类的是 _ 。(分数:2.00)A.文件输入流 FileInputStreamB.对象输入流 ObjectInputStreamC.字符输入流 CharInputStream D.压缩文件输入流 ZipInputStrea
15、m解析:解析 本题考查考生对 Java 中 InputStream 非字符输入流的掌握。所有的字节输入流都是从InputStream 继承,包括:ByteArrayInputStream,以字节数组作为输入流;FileInputStream,可对一个磁盘文件设计的数据进行处理:PipedInputStream,实现线程之间通信的一个类;FilterInputStream,过滤器输入流;SequenceInputStream,将多个输入流首尾相接;ObjectInputStream,实现 ObjectInput 接口。选项 D 中压缩文件输入流 ZipInputStream 是InflaterI
16、nputStream 的子类,而 InflaterInputStream 是 FilterInputStream 的子类,只有选项 C 中字符输出流 CharInputStream 类是字符流。本题涉及内容较多,要求对整个输入输出流有所了解。5.下面程序的输出结果是_。 public class exl public static void main(String args) for(int cnt=0;cnt10,;cnt+) if(cnt=5) break; System.out.print(cnt); (分数:2.00)A.01234 B.012346789C.6789D.5解析:6.当
17、按 Tab 键以离开文本框时,将激发_事件。(分数:2.00)A.FocusEvent B.WindowEventC.ActionEventD.以上都不对解析:解析 与 AWT 有关的事件类都由 Java.awt.AWTEvent 类派生。这些 AWT 事件分为低级事件和高级事件。低级事件是指基于组件和容器的事件,高级事件是基于语义的事件。 (1)低级事件 1)ComponentEvent:组件事件,组件尺寸的变化和移动。 2)ContainerEvent:容器事件,组件增加和移动。 3)WindowEvent:窗口事件,关闭窗口、窗口活动和图标化。 4)FucousEvent:焦点事件,焦点
18、的获得和丢失。 5)KeyEvent:键盘事件,键盘的按下和释放。 6)MouseEvent:鼠标事件,鼠标的单击和移动。 (2)高级事件 1)ActionEvent:动作事件,按钮按下、TextField 中按下 Enter 键。 2)AdjustmentEvent:调节事件,在滚动条上移动滑块和调节数值。 3)ItemEvent:项目事件,选择列表框中的项目。 4)TextEvent:文本事件,文本对象发生改变。 按 Tab 键离开文本框时,必然发生焦点的变化,所以会激发焦点事件(FucousEvent)。7.下列叙述中正确的是_。(分数:1.80)A.在栈中,栈中元素随栈底指针与栈顶指针
19、的变化而动态变化B.在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化C.在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化 D.上述三种说法都不对解析:解析 栈是限制仅在表的一端进行插入和删除的运算的线性表,通常称插入、删除的这一端为栈顶,另一端称为栈底。8.J2EE 有强大的服务功能,但不包括 _ 。(分数:2.00)A.命名服务 INDI(LDAP)B.YIGA 投递服务 C.部署服务、消息服务 IMSD.安全服务解析:9.算法的时间复杂度是指_。(分数:1.80)A.算法的执行时间B.算法所处理的数据量C.算法程序中的语句或指令条数D.算法在执行过程中所需要的基本运算次数
20、解析:解析 算法的时间复杂度是指算法需要消耗的时间资源。一般来说,计算机算法是问题规模 n 的函数 f(n),算法的时间复杂度也因此记做 T(n)=O(f(n)因此,算法执行的时间的增长率与 f(n)的增长率正相关,称作渐进时间复杂度(Asymptolic Time Complexity)。简单来说就是算法在执行过程中所需要的基本运算次数。10.下列语句中执行跳转功能的语句是_。(分数:2.00)A.for 语句B.while 语句C.continue 语句 D.switch 语句解析:解析 continue 语句具有跳转功能,可以跳过循环体中下面尚未执行的语句,回到循环体的开始继续下一轮的循
21、环。11.下列构造方法的调用方式中,正确的是 _ 。(分数:2.00)A.按照一般方法调用B.由用户直接调用C.只能通过 new 自动调用 D.被系统调用解析:解析 本题考查 Java 中的构造方法。构造方法在 Java 中占有举足轻重的地位,务必掌握。构造方法足类中的一种特殊方法,是为对象初始化操作编写的方法,用来定义对象的初始状态。构造方法不能被程序调用,构造方法名必须与类名相同,没有返回值,用户不能直接调用,只能通过 new 自动调用,所以选项 C 正确。12.下列对队列的描述中正确的是_。(分数:2.00)A.队列属于非线性表B.队列按“先进后出”原则组织数据C.队列在队尾删除数据D.
22、队列按“先进先出”原则组织数据 解析:解析 队列(Queue)是指允许在一端进行插入,而在另一端进行删除的线性表。允许插入的一端称为队尾,允许删除的一端称为队头。在队列这种数据结构中,最先插入的元素将能够最先被删除;反之,最后插入的元素最后才能被删除。因此,队列又称“先进先出”或“后进后出”的线性表。13.在 Java 类库中,提供构建和管理用户图形界面功能,封装抽象窗口的包是 _ 。(分数:1.00)A.javautil 包B.javabean 包C.javaawt 包 D.javarmi 包解析:14.下列关于队列的叙述中,正确的是_。(分数:2.00)A.在队列中只能插入数据B.在队列中
23、只能删除数据C.队列是先进先出的线性表 D.队列是先进后出的线性表解析:解析 队列是指允许在一端进行插入而在另一端进行删除的线性表。队列又称为“先进先出”或“后进后出”的线性表,它体现了“先来先服务”的原则。在队列中,队尾指针与队首指针共同反映队列中元素动态变化的情况。15.下列代码的执行结果是_。 int numbers=new int6; for(int i=1; inumbers. length; i+) numbersi=i-1; System. out. print(numbersi+“);(分数:1.80)A.0 1 2 3 4 5B.1 2 3 4 5 6C.0 1 2 3 4
24、D.1 2 3 4 5解析:解析 该题是简单的 for 循环考题,通过逐一判断可得到答案,数组的长度是 6,数组的内容从下标 1 开始,最大循环是 5,numbeis5的值是 4。16.已知 zipname 是一个压缩文件名。则 zipname 在下列代码中出现的正确位置是_。 ZipInputStream zin= new ZipInputStzeam(new FileInputStream(); ZipEntry entry; while(entry=zin. getNextEntry()!=null) fileCombo. addItem(entry. getName(); zin. c
25、loseEntry(); zin. close();(分数:1.80)A. B.C.D.解析:解析 该程序的功能是从 zip 压缩文件中获取各个文件的名字。因此应该在 A 处。17.下列程序的运行结果是_。 public class Test public static void main(String args) intm=new int1,2,3,4,5,6,7,8; int sum=0; for(int i=0;i8;i+) sum+=mi; if(i=3)break; System.out.println(sum); (分数:1.00)A.3B.6C.10 D.36解析:解析 该程序的
26、功能是将 m 数组中的前四个数相加,将和保存在 sum 中,最后输出 sum 的值。因为程序中 for 循环停止的条件有两个,一个是当 i8 的时候,另一个是当 i=3 的时候,即运行到 m 数组中第四个值的时候,可以跳出 for 循环。程序执行的是后者,所以输出的结果是 10。18.按 Java 语言规则,下列赋值语句中不合法的是_。(分数:2.00)A.float a=2.0 B.double b=2.0C.int c=2D.long d=2L解析:19.下列属于合法的 Java 标识符是_。(分数:1.80)A.“ABC“B. public static void main(String
27、 args) Thread tt=new Thread(new Test(); tt.start(); 代码运行结果是_。(分数:1.00)A.将抛出一个异常B.没有输出并正常结束C.输出“Running“并正常结束D.程序第 2 行将出现一个编译错误 解析:解析 接口可以作为一种引用来使用。接口类型变量(Runnable)将实现该接口的类(Test)的实例存入,通过这些变量去访问类所实现接口中的方法(run)。Test 不是一个抽象类,它没有实现 Runnabk 中的 run()方法,程序第 2 行将出现一个编译错误。因此,本题的正确答案是 D。24.Java 为移动设备提供的平台是_。(分
28、数:2.00)A.J2ME B.J2SEC.J2EED.JDK 5.0解析:解析 本题考查常用 Java 开发平台。J2ME 是为嵌入式和移动设备提供的 Java 平台,J2SE 是面向企业级应用与服务的综合性标准开发平台,J2EE 是面向大企业级、用容器管理专用构件的应用平台,JDK 5.0 是 SUN 公司发布的一种 Java 开发工具包。25.下列程序的运行结果是_。 public classMyTest public static void main(String args) int sum=1; for(int j=1;j5;j+) sum*=j; System.out.printl
29、n(sum); (分数:1.00)A.1B.10C.24 D.120解析:解析 该程序考查的主要是 sum*=j;这一语句的理解,即 sum=sum*j;由于 sum 的初始值为 1,所以实际上运行的是 1*2*3*4 的值。26.算法的时间复杂度是指_。(分数:1.00)A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程中所需要的基本运算次数 D.算法程序中的指令条数解析:解析 本题考查算法的时间复杂度,这个知识点是本章的重点考点之一,考生应该好好理解掌握。算法的时间复杂度是指执行算法所需要的计算工作量,也就是算法在执行过程中所执行的基本运算的次数,而不是指程序运行需要的时间或是
30、程序的长度。27.按照“先进先出”原则组织数据的结构是_。(分数:2.00)A.队列 B栈C.双向链表D.二叉树解析:解析 队列是一种特殊的线性表示,只允许在表的一端插入元素;在表的另一端删除元素,插入元素的一端叫“队尾”,删除元素的一端叫“队头”;先插入的元素先被删除,是按“先进先出”的原则组织数据的。28.能够写内存的类是_。(分数:1.00)A.FileOutputStreanB.PringtWriterC.ByteArrayOutputStream D.StringWriter解析:29.线程交互中不提倡使用的方法是(分数:1.00)A.wait()B.notify()C.stop()
31、 D.notifyAll()解析:30.下列安全控制命令中,哪个是显示证书缓存区和密钥表项的命令?(分数:1.00)A.policytoolB.kinitC.klist D.ktab解析:31.软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是_。(分数:1.80)A.编辑程序B.操作系统C.教务管理系统 D.汇编程序解析:解析 编译程序和汇编程序属于开发工具,操作系统属于系统软件,而教务管理系统属于应用软件。32.下列叙述中,错误的是_。(分数:2.00)A.JButton 类和标签类可显示图标和文本B.Button 类和标签类可显示图标和文本 C.AWT 构
32、件能直接添加到顶层容器中D.Swing 构件不能直接添加到顶层容器中解析:解析 JButton 类属于 Swing 构件,可以显示图标和文本;而 Button 类属于 AWT 构件,只能显示文本。33.阅读如下程序。 public class Test2 public static void main(String args) int a=10,b=4,c=20,d=6; System.out.println(a+*b+c*-d); 程序运行结果是_。(分数:2.00)A.144B.160C.140 D.164解析:解析 表达式 a+和-d 的值分别是 a 和 d-1,所以程序运行结果是 10
33、4+20(6-1)=40+100=140。34.在 HTML 页中可包含 Applet,关于 Applet 的参数,以下说法错误的是 _ 。(分数:1.00)A.Applet 获取参数是通过在 HTML 文件中采用PARAM标记定义参数B.参数的名字是区分大小写的 C.Applet 通过命令行将参数传给 main()方法D.参数允许用户定制 Applet 的操作解析:35.需求分析阶段最后提供的文档是软件的_。(分数:2.00)A.功能说明书B.加工说明书C.可行性分析报告D.需求规格说明书 解析:解析 选项 A、B、C 都是需求分析前段时间的文档。需求分析阶段最后成果就是软件需求规格说明书,它是软件开发的重要文档之一。