计算机二级考试JAVA练习试题及答案1.docx
- 文档编号:9875755
- 上传时间:2023-02-07
- 格式:DOCX
- 页数:14
- 大小:23.04KB
计算机二级考试JAVA练习试题及答案1.docx
《计算机二级考试JAVA练习试题及答案1.docx》由会员分享,可在线阅读,更多相关《计算机二级考试JAVA练习试题及答案1.docx(14页珍藏版)》请在冰豆网上搜索。
计算机二级考试JAVA练习试题及答案1
2021年计算机二级考试JAVA练习试题及答案1
一、选择题(每小题1分,共40小题,共40分)
1.线性表L=(al,a2,a3,…ai,…an),下列说法正确的是()。
A.每个元素都有一个直接前件和直接后件
B.线性表中至少要有一个元素
C.表中诸元素的排列顺序必须是由小到大或由大到小
D.除第一个元素和最后一个元素外,其余每个元素都有且只有一个直接前继和直接后继
2.下列关于完全二叉树的叙述中,错误的是()。
A.除了最后一层外,每一层上的结点数均达到值
B.可能缺少若干个左右叶子结点
C.完全二叉树一般不是满二叉树
D.具有结点的完全二叉树的深度为[log2n]+1
3.对长度为n的线性表进行顺序查找,在最坏情况下需要比较的次数为()。
A.125
B.n/2
C.n
D.n+1
4.下列选项中不属于结构化程序设计方法的是()。
A.自顶向下
B.逐步求精
C.模块化
D.可复用
5.软件需求分析阶段的工作,可以分为4个方面:
需求获取、需求分析、编写需求规格说明书以及()。
A.阶段性报告
B.需求评审
C.总结
D.都不正确
6.下列叙述中,不属于测试的特征的是()。
A.测试的挑剔性
B-完全测试的不可能性
C.测试的可靠性
D.测试的经济性
7.模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准是模块的()。
A.抽象和信息隐蔽
B.局部化和封装化
C.内聚性和耦合性
D.激活机制和控制方法
8.下列关于软件测试的描述中正确的是()。
A.软件测试的目的是证明程序是否正确
B.软件测试的目的是使程序运行结果正确
C.软件测试的目的是尽可能多地发现程序中的错误
D.软件测试的目的是使程序符合结构化原则
9.下列工具中为需求分析常用工具的是()。
A.PAD
B.PFD
C.N-S
D.DFD
10.下列特征中不是面向对象方法的主要特征的是()。
A.多态性
B.继承
C.封装性
D.模块化
11.下列与数据元素有关的叙述中,不正确的是()。
A.数据元素是数据的基本单位,即数据集合中的个体
B.数据元素是有独立含义的数据最小单位
C.数据元素又称为结点
D.数据元素又称为记录
12.栈S最多能容纳4个元素,现有6个元素按A、B、C、D、E、F的顺序进栈,下列()序列不是可能的出栈序列。
A.C、B、E、D、A、F
B.C、D、B、F、E、A
C.A、D、E、C、B、F
D.A、F、E、D、C、B
13.在电子邮件程序向邮件服务器中发送邮件时,使用的是简单邮件传输协议,下列()是简单邮件传输协议。
A.POP3
B.IMAP
C.HTTP
D.SMTP
14.对一个由n个关键码组成的序列,借助排序过程选出其中的关键码,要求关键码比较次数和移动次数最少,则排序方法是()。
A.归并排序
B.直接插入排序
C.直接选择排序
D.快速排序
15.对线性表进行二分法查找,其前提条件是()。
A.线性表以顺序方式存储,并已按关键码值排好序
B.线性表以顺序方式存储,并已按关键码值的查找频率排好序
C.线性表以有序方式存储,并已按关键码值排好序
D.线性表以有序方式存储,并已按关键码值的查找频率排好序
16.Java的核心包中,提供编程应用的基本类的包是()。
A.java.lang
B.java.util
C.java.applet
D.java.rmi
17.下列关于Java对import语句规定自叙述中,错误的是()。
A.在Java程序中import语句可以有多个
B.在Java程序中import语句可以没有
C.在Java程序中import语句必须有一个
D.在Java程序中import语句必须引入在所有类定义之前
18.在编译Java程序时,用于指定生成.class文件位置的选项是()。
A.-9
B.-d
C.-verbose
D.-nowarn
19.下列方法中,不属于WindowListener接口的是()。
A.windowOpened()
B.windowClosed()
C.windowActivated()
D.mouseDragged()
20.运行Java程序需要的工具软件所在的目录是()。
A.JDK的bin目录
B.JDK的demo目录
C.JDK的lib目录
D.JDK的ire目录
21.下列关于Java语言特点的叙述中,错误的是()。
A.Java是面向过程的编程语言
B.Java支持分布式计算
C.Java是跨平台的编程语言
D.Java支持多线程
22.可以使当前同级线程重新获得运行机会的方法是()。
A.Sleep()
B.join()
C.yield()
D.interrupt()
23.下列语句中,属于多分支语句的是()。
A.if语句
B.for语句
C.switch语句
D.dowhile语句
24.阅读下列代码
publicclassTest2005{
publicstaticvoidmain(Stringargs[]){
Strings="Test";
switch(s){
case"Java":
System.out.print("Java");
break;
case"Language":
System.out.print("Lan-
guage");
break;
case"Test":
System.out.print("Test");
break;
}
}
}
其运行结果是()。
A.Java
B.Language
C.Test
D.编译时出错
25.在程序读入字符文件时,能够以该文件作为直接参数的类是()。
A.FileReader
B.BufferedReader
C.FilelnputStream
D.ObjectlnputStream
26.下列描述中,正确的是()。
A.在Serializable接口中定义了抽象方法
B.在Serializable接口中定义了常量
C.在Serializable接口中没有定义抽象方法,也没有定义常量
D.在Serializable接口中定义了成员方法
27.请阅读下面程序,说明该程序创建线程使用的方法是()。
publicclassThreadTest
{
publicstaticvoidmain(Stringargs[])
{
Threadtl=newThread(newHolloWorld());
Threadt2=newThread(newHolloWorld());
tl.start();
t2.Start();
}
}
classHolloWorldimplementsRunnable
{
inti;
publicvoidrun()
{
while(true)
{
System.out.println("HolloWorld"+i++);
if(i==5)break;
}
}
}
A.继承Thread类
B.实现Runnable接口
C.tl.start()
D.t2.start()
28.java.io包的File类是()。
A.字符流类
B.字节流类
C.对象流类
D.非流类
29.为保护本地主机,对Applet安全限制中正确的是()。
A.Applet可加载本地库或方法
B.Applet可读、写本地计算机的文件系统
C.Applet可向Applet之外的任何主机建立网络连接
D.Applet不能运行任何本地可执行程序
30.请阅读下面程序
publicclassExampleStringBuffer{
publicstaticvoidmain(String[]args){
StringBuffersb=newStringBuffer("test");
System.OUt.println("buffer="+sb);
System.OUt.println("length="+sb.length
());}}
程序运行结果中在"length="后输出的值是()。
A.10
B.4
C.20
D.30
31.每个Java小应用程序必须定义为()。
A.Applet类或JApplet类的子类
B.JFrame类的子类
C.Frame的子类
D.Window的子类
32.若特快订单是一种订单,则特快订单类和订单类的关系是()。
A.使用关系
B.包含关系
C.继承关系
D.无关系
33.下列关于Applet的安全限制的叙述中,错误的是()。
A.通常情况下,禁止Applet读、写本地文件系统
B.通常情况下,禁止Applet向Applet源主机之外的任何主机建立网络连接
C.通常情况下,禁止Applet读取系统信息
D.通常情况下,禁止Applet加载本地库或方法
34.Swing的选项面板是()。
A.JTabbedPane
B.JLayeredPane
C.JScrollPane
D.JSplitPane
35.提供showDocument()方法,使Applet能够请求浏览器访问特定URL的类是()。
A.Applet
B.AppletContext
C.JApplet
D.URL
36.阅读下面程序
1publicclassTryextendsThread{
2publicstaticvoidmain(Stringargs[]){
3Tryt=newTry();
4t.start();
5}
6
7publicvoidrun(intj){
8inti=0;
9while(i
10System.out.println("祝你成功!
");
11i++:
12}
13}
14}
该程序要求打印5行"祝你成功!
",必须改正程序中的某行代码,程序才能完成。
选择正确的修改是()。
A.将第1行的extendsThread改为implementsRunnable
B.将第3行的newTry()改为newThread()
C.将第4行t.start()改为start(t)
D.将第7行的publicvoidrun(intj)改为publicvoidrun()
37.若数组a定义为int[][]a=newint[3][4],则a是()。
A.一维数组
B.二维数组
C.三维数组
D.四维数组
38.下列标识符(名字)命名原则中,正确的是()。
A.类名的首字母小写
B.变量和方法名的首字母大写
C.接口名的首字母小写
D.常量完全大写
39.Java语言使用的字符码集是()。
A.ASCII
B.BCD
C.DCB
D.Unicode
40.下列事件监听器中,无法对TextField对象进行事件监听和处理的是()。
A.ActionListener
B.FocusListener
C.MouseMotionListener
D.ChangeListener
一、选择题
1.D。
【解析】线性表可以为空表;第一个元素没有直接前驱,最后一个元素没有直接后继;线性表的定义中,元素的排列并没有规定大小顺序。
2.B。
【解析】满二叉树指除最后一层外,每一层上所有结点都有两个子结点的二叉树。
完全二叉树指除最后一层外,每一层上的结点数均达到值,在最后一层上只缺少右边的若干叶子结点的二叉树。
由定义可知,满二叉树肯定是完全二叉树,而完全二叉树一般不是满二叉树。
3.C。
【解析】对线性表进行顺序查找时,最坏情况下,要查找的元素是表的最后一个元素或查找失败,这两种情况都需要将这个元素与表中的所有元素进行比较,因此比较次数为n。
4.D。
【解析】结构化程序设计的主要原则概括为自顶向下,逐步求精,模块化。
5.B。
【解析】需求分析是软件定义时期的最后一个阶段。
可以概括为四个方面:
需求获取;需求分析;编写需求规格说明书;需求评审。
6.C。
【解析】软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。
软件测试有3个重要特征:
测试的挑剔性、完全测试的不可能性及测试的经济性。
7.C。
【解析】模块的独立性是评价设计好坏的重要度量标准。
衡量软件的模块独立性使用耦合性和内聚性两个定性的度量标准。
8.C。
【解析】软件测试是为了尽可能多地发现程序中的错误,尤其是至今尚未发现的错误。
9.D。
【解析】需求分析常用工具有数据流图(DFD)、数据字典(DD)、判定树和判定表。
问题分析图(PAD)、程序流程图(PFD)、金式图(N-S)都是详细设计的常用工具,不是需求分析的工具。
10.D。
【解析】模块化是结构化程序设计的特点。
面向对象设计方法使用现实世界的概念抽象地思考问题从而自然地解决问题。
他的特点包括:
分类性、封装性、模块独立性、继承和多态性等。
11.B。
【解析】数据元素是数据的基本单位,即数据集合中的个体。
有些情况下也把数据元素称为结点、记录、表目等。
一个数据元素可由一个或多个数据项组成,数据项是有独立含义的数据最小单位,其值能确定一个数据元素的数据项。
12.D。
【解析】栈的特性为后进先出,而栈S只能容纳4个元素。
当F进栈时,说明栈中有已有B、C、D、E四个元素,所以F无法进栈。
13.D。
【解析】在电子邮件程序向邮件服务器中发送邮件时,使用的是简单邮件传输协议(SMTP),而在电子邮件程序从邮件服务器中读取邮件时,可以使用邮局协议(POP3)。
14.C。
【解析】直接选择排序第一遍扫描就可以把的关键码找出来(不必等到排序结束),而其他几种排序方法都必须等到排序完成才能找到关键码。
15.A。
【解析】二分法查找是一种效率较高的线性表查找方法。
要进行二分法查找,则线性表结点必须是按关键码值排好序的,且线性表以顺序方式存储。
16.A。
【解析】Java的核心包一共有l2个,其中:
java.lan9包中封装了所有编程应用的基本类;java.util包提供实用程序类和集合类,如系统特性定义和使用、日期函数类、集合等常用工具;java.applet包为Applet提供执行需要的所有类,主要是访问Applet内容的通信类;java.rmi包提供程序远程方法调用所需的类。
因此,本题的正确答案是A。
17.C。
【解析Java程序中使用import关键字导入一个包中的类。
在一个Java源程序中,可以有0个或多个import语句,但是必须在所有类定义之前引入标准类。
因此,本题中选项C的说法是错误的。
18.B。
【解析】javac.exe是Java编译器,能将源程序代码编译成字节码,以.class扩展名存入Java工作目录中。
它的命令格式为:
javac[选项]文件名。
其中[选项]包括以下几个:
-g。
输出文件中加行号以及局部变量信息,为调试程序时用。
-o对类文件进行优化编译。
-nowarn关闭警告信息,只显示错误信息。
-verbose显示源代码文件和字节码文件的相关信息。
-d指定存放生成的类(.class)文件的位置根据上述介绍可知,在编译Java程序时,可以通过选项-d来指定生成的.class文件的位置。
因此,本题的正确答案是B。
19.D。
【解析】WindowListener接口包含的方法是:
①WindowActivated(WindowEvent);②WindowOlpened(WindowEvent);③WindowClosed(WindowEvent);④WindowClosing(WindowEvent);⑤WindowDeactivated(WindowEvent);⑥WindowDeiconified(WindowEvent)⑦windowlconified(WindowEvent)。
所以D选项错误。
20.A。
【解析】运行Java的JDK一共包含五个目录,分别是:
bin目录,该目录包含Java编译器、解释器和许多工具(如服务器工具、IDL、package工具等);lib目录,该目录包含Java库文件;jre目录,该目录是Java程序运行环境的根目录,它下面包含bin子目录,包括平台所用工具和库的可执行文件以及DLL文件;demo目录,该目录包含源代码的程序示例;include目录,该目录包含Win32子目录,都是本地方法的文件。
21.A。
【解析】Java是新一代编程语言,具有很多特点:
简单易学;利用面向对象技术;分布式计算;健壮性(鲁棒性);安全性;跨平台(即体系结构中立);可移植性;解释执行;高性能;多线程;动态性。
因此,本题的正确答案是A。
22.C。
【解析】本题考查线程的基本控制。
Thread类提供的基本线程控制方法包括:
sleep()——使比其低的优先级线程运行,可以让一个线程暂停运行一段固定的时间;yield()——使具有与当前线程相同优先级的线程有运行的机会;join()——使当前线‘程暂停执行,等待调用该方法的线程结束后,再恢复执行;interrupt()——中断线程的阻塞状态,并且线程接收到InterruptException异常。
根据上述介绍可知,只有yield()方法可以使当前同级线程重新获得运行机会。
因此,本题的正确答案是C。
23.C。
【解析】dowhile语句和for语句是循环语句;it语句和switch语句是分支语句。
而if语句称为条件语句,switch语句称为多分支语句。
24.D。
【解析】本题考查switch语句的用法。
switch语句是多分支语句,即根据表达式的值来执行多个操作中的一个。
在switch语句中,”表达式”的返回值类型必须是这几种类型
之一:
int、byte、char、short。
本题中,switch的表达式s是一个字符串Strin9类型的值,它不是int、byte、char、short中的任意一个。
因此表达式s的类型不对,编译时
出错。
25.A。
【解析】FileReader、BufferedReader是字符类输入流。
FileInputStream是字节输入流。
对象串行化时,需要使用ObjectlnputStream类中提供的方法从对象流中读取对象。
所以,在程序读入字符文件时,要使用字符流FileReader或BufferedReader。
但是FileReader的参数是读入的文件,而BufferedReader的参数是FileReader流的一个对象。
因此,本题的正确答案是A。
26.C。
【解析】在java.i0包中,接口Serializable是实现对象串行化的工具。
实际上,Serializable接口是一个空接口,它里面既没有定义抽象方法,也没有定义常量。
Serializable接口的目的只是简单地标识一个类的对象是可以被串行化的。
27.B。
【解析】本题考查线程的创建。
在Java中,创建线程有两种方法:
①通过实现Runnable接口创建线程。
Runnable接口中只定义了一个run()方法作为线程体。
②通过继承Thread类创建线程,Thread类本身实现了Runnable接口。
创建的新的线程不会自动运行,必须调用start()方法才能运行。
本题中HolloWorld类实现了Runnable接口。
28.D。
【解析】Java.io包中的类可以处理不同类型的流,比如字节流、字符流、对象流、非流类等。
File类就是一个重要的非流类,它是以一种系统无关的方式表示一个文件对象的属性。
29.D。
【解析】Java平台为了防范恶意程序的攻击,保护本地主机,对Applet作了如下安全限制:
①Applet不能运行任何本地可执行程序。
②禁止加载本地库或方法。
③禁止读、写本地计算机的文件系统。
④禁止向提供Applet之外的任何主机建立网络连接。
⑤不能读取某些系统信息。
⑥由一个Applet弹出的窗口外观上与一个Application弹出的窗口不同,Applet弹出的窗口中会有警告提示信息,帮助用户区分Applet窗口与可信的Application窗口。
30.B。
【解析】本题对StringBuffer(Stringstr)构造方法,用str给出字符串的初始值,并分配16个字符的缓存。
因此,字符串sb的初始值是”test”,并且包含l6个字符的缓存。
length()方法用来获得字符串长度,不包含缓存。
故程序运行结果中在”length=”后输出的值应该是字符串sb的长度,即4。
31.A。
【解析】本题考查Applet的基本知识。
Applel类定义了小应用程序(Applet)与其运行环境之间的一个接口;JApplet是Applet类的扩展,它继承了Applet的方法和执行机制,同时也增加了对Swing构件的支持。
每个Jaw小应用程序都必须是Applet类或JApplet类的子类。
因此,本题的正确答案是A。
32.C。
【解析】继承是允许将一个类定义为一个更通用类的特例。
特殊类称为子类,通用类称为父类。
除了订单类的属性外,特快订单类可能还有其他一些特殊属性。
显然,订单类是通用类,即父类;而特快订单类是定单类的一个特例,是子类。
订单类和特快订单类是继承关系。
33.C。
【解析】本题考查Applet的安全限制。
许多浏览器为了保护本地主机,一般情况下,对Applet作了如下安全限制:
Applet不能运行任何本地可执行程序;禁止
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 二级 考试 JAVA 练习 试题 答案