还没刷二级Java试题的小伙伴,don't worry!计算机等级考试题库送给你,要相信临阵磨枪,不快也光!
2018年9月计算机二级Java试题
【1】
1). 下列关于for循环和while循环的说法中哪个是正确的?
A.while循环能实现的操作,for循环都能实现
B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果
C.两种循环在任何情况下都可以相互转换
D.两种循环结构中都必须有循环体,循环体不能为空
正确答案:D
2). 注释的基本原则不包括
A.注释应该增加代码的清晰度
B.注释要简洁
C.在写代码之前写注释
D.尽量给每一条语句加注释
正确答案:D
3). 下列说法错误的是
A.switch语句只能处理等式,而if语句还可以处理关系表达式和逻辑表达式。
B.可以使用throw语句人为地引发异常。
C.可以用final说明变量为一个常量。
D.Java的字节代码是一种与平台无关的代码,即它与具体的系统是相关的。
正确答案:D
4). Java 语言中,对当前对象的父类对象进行引用的关键字是( )。
A.case
B.super
C.char
D.break
正确答案:B
答案解析:当子类隐藏了父类的变量,并重写了父类方法后,又要使用父类变量或父类被重写的方法时,可以通过super 来实现对父类变量的访问和对父类方法的调用。
5). 自定义的异常类可从( )类继承。
A.Error
B.AWTError
C.VirtualMachineError
D.Exception及其子集
正确答案:D
答案解析:Java语言中Throwable类分为Error和Exception两个子类。自定义的异常类是 从Exception及其子集类继承的。
6). 使得线程放弃当前分得的CPU 时间,但不使线程阻塞,即线程仍处于可执行状态,随时可能再次分得CPU时间的方法是( )。
A.ti me()
B.yield()
C.load()
D.mi n()
正确答案:B
答案解析:本题考查线程阻塞的概念。yield()方法使得线程放弃当前分得的CPU 时间,但是不使线程阻塞,即线程仍处于可执行状态,随时可能再次分得CPU 时间。调用yield()的效果等价于调度程序认为该线程已执行了足够的时间从而转到另一个线程。
7). 若干进程之间相互合作,共同完成一项任务,进程的这种协同工作关系称为( )。
A.异步
B.同步
C.并发
D.互斥
正确答案:B
答案解析:进程同步是指进程之间一种直接的协同工作关系,这些进程相互合作,共同完成一项任务。进程间的直接相互作用构成进程的同步。
8). 下列叙述中错误的是( )。
A.线性表是由n个元素组成的一个有限序列
B.线性表是一种线性结构
C.线性表的所有结点有且仅有一个前件和后件
D.线性表可以是空表
正确答案:C
答案解析:线性表是一种线性结构,由n(n≥0)个元素组成,所以线性表可以是空表。但是在线性表中,第一个结点没有前驱,最后一个结点没有后继,其他结点有且只有一个前驱和后继,所以选项C是错误的。
9). 已知一棵二叉树前序遍历和中序遍历分别为ABDEGCFH和DBGEACHF,则该二叉树的后序遍历为( )。
A.GEDHFBCA
B.DGEBHFCA
C.ABCDEFGH
D.ACBFEDHG
正确答案:B
答案解析:二叉树的遍历有3种:前序、中序和后序。后序遍历首先遍历左子树或左子结点,然后遍历右子树或右子结点,最后访问根结点;中序遍历首先遍历左子树或左子结点,然后访问根结点,最后遍历右子树或右子结点;后序遍历首先访问根结点,然后遍历左子树或左子结点,最后遍历右子树或右子结点。本题根据前序遍历和中序遍历的结果可以得出二叉树的结构,然后再对其进行后序遍历,因此答案为选项B。
10). 一棵二叉树的中序遍历结果为DBEAFC,前序遍历结果为ABDECF,则后序历结果为( )。
A.ACFBED
B.DFBECA
C.ABCDEF
D.DEBFCA
正确答案:D
答案解析:这类题型一般通过前序遍历的结果来找根结点,用中序遍历的结构找分支结点,通过画出该二叉树可得到结果。
【2】
1). 某二叉树结点的前序序列为E、A、C、B、D、G、F,对称序列为A、B、C、D、E、F、G。该二叉树结点的后序序列为
A.B、C、F、G、E
B.C、F、A、G、E
C.E、G、F、A、B
D.E、G、A、C、F、B
正确答案:A
2). 在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同,这种面向对象程序特性称为
A.隐藏
B.覆盖
C.重载
D.Java不支持此特性
正确答案:C
3). 若要把变量声名为多个线程共用的变量,应使用如下哪种修饰符?
A.protected
B.provate
C.transient
D.volatile
正确答案:D
4). 下列程序段的输出结果是public class operatorsandExpressions{void stringPlus(){int a=3,b=4,c=5;System.out.println("abc"+3);}}
A.15
B.abc3
C.256
D.63
正确答案:B
5). 下述关于数据库系统的叙述中正确的是
A.数据库数据可以为经DBA认可的各用户所共享
B.数据库系统避免了一切冗余
C.数据库系统的存储模式如有改变,则概念模式应予调整,否则用户会在执行中出错
D.数据库系统比文件系统能管理更多的数据
正确答案:A
6). 下列关于栈的叙述中正确的是
A.在栈中只能插入数据
B.在栈中只能删除数据
C.栈是先进先出的线性表
D.栈是先进后出的线性表
正确答案:D
7). 编译运行以下程序后,关于输出结果的说法正确的是public class Conditional{public static void main(String args[]){int x=4;System.out.println("value is "+((x>4)?99.9:9));}}
A.输出结果为value is 99.99
B.输出结果为value is 9
C.输出结果为value is 9.0
D.编译错误
正确答案:C
8). 线性表若采用链表存储结构时,要求内存中可用存储单元的地址____。
A.必须是连续的
B.部分地址必须是连续的
C.一定是不连续的
D.连续不连续都可以
正确答案:D
9). 在Java中,能实现多重继承效果的方式是____。
A.内部类
B.适配器
C.接口
D.同步
正确答案:C
10). 在编写异常处理的Java程序中,每个catch语句块都应该与____语句块对应,使得用该语句块来启动Java的异常处理机制。
A.if-else
B.switch
C.try
D.throw
正确答案:C
【3】
1). 下列代码的执行结果是:public class Test2{public static void main(String args[]){System.out.println(5/2);}}
A.2.5
B.2.0
C.2.50
D.2
正确答案:D
2). 在Java中,负责对字节代码解释执行的是____。
A.垃圾回收器
B.虚拟机
C.编译器
D.多线程机制
正确答案:B
3). 数据流图(DFD)是用于描述结构化方法中 _____阶段的工具。
A.可行性分析
B.详细设计
C.需求分析
D.程序编码
正确答案:C
4). 调用线程的下列方法,不会改变该线程在生命周期中状态的方法是
A.yeild()
B.wait()
C.sleep()
D.isAlive()
正确答案:D
5). 数据独立性是数据技术的重要特点之一。所谓数据独立性是指____。
A.数据与程序独立存放
B.不同的数据被存放在不同的文件中
C.不同的数据只能被对应的应用程序所使用
D.以上三种说法都不对
正确答案:D
6). Java的字符类型采用的是Unicode编码方案,每个Unicode码占用____个比特位。
A.8
B.16
C.32
D.64
正确答案:B
7). 若某线性表中最常用的操作是取第I个元素和找第I个元素的前趋元素,则采用____存储方式最节省时间。
A.顺序表
B.单链表
C.双链表
D.单循环链表
正确答案:A
8). 数据库系统的核心是
A.数据模型
B.数据库管理系统
C.软件工具
D.数据库
正确答案:B
9). 某二叉树结点的前序序列为E、A、C、B、D、G、F,对称序列为A、B、C、D、E、F、G。该二叉树结点的后序序列为
A.B、C、F、G、E
B.C、F、A、G、E
C.E、G、F、A、B
D.E、G、A、C、F、B
正确答案:A
10). WindowListener中可以实现窗口关闭功能的方法是
A.public void windowOpened(WindowEvent e)
B.public void windowClosed(WindowEvent e)
C.public void windowClosing(WindowEvent e)
D.public void windowDeactivated(WindowEvent e)
正确答案:C
【4】
1、以下 不是Java中有效的关键字。
A、const
B、NULL
C、false
D、this
本题考查的是Java的关键字。
Java中常量null,false,true,new,this,const,break都是小写。
故本题答案为B。
2、关于被私有访问控制符private修饰的成员变量,以下说法正确的是 。
A、可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类
B、可以被两种类访问和引用:该类本身、该类的所有子类
C、只能被该类自身所访问和修改
D、只能被同一个包中的类访问
解析:本题考查的是成员变量的修饰符。private修饰的变量说明变量为私有访问。只能被该类自己访问或调用,是对成员变量的高级保护。
故本题答案为C。
3、当检索一个压缩文件时,首先要建立压缩文件输入流对象。该对象 。
A、以选中的压缩文件为参数
B、以FileInputStream对象为参数
C、以InputStreamReader对象为参数
D、以BufferedReader对象为参数
本题考查的是压缩文件。
在java.io包中提供了对压缩文件进行操作的能力。它是通过压缩文件输入流与压缩文件输出流来实现的,其分别继承自InflaterInputStream与DeflaterOutputStream。在创建压缩文件输入流时,其初始化参数是一个FileInputStream类的实例。
故本题答案为B。
4、计算机中的流是______ 。
A、流动的字节
B、流动的对象
C、流动的文件
D、流动的数据缓冲区
本题考查的是流的概念。
流,最早从C语言中引入的。其可以看成是一个流动的数据缓冲区。数据从数据源方向经过缓冲区流向数据的目的地。在传送的过程中,其传送方式是串行的。在Java中的java.io包中定义了Java中常见流的接口与类。其中包括两个最基本的流的抽象类,它们分别是OutputStream与InputStream。其余的流都分别从这两个基本类中继承而来。故本题答案为D。
5、结构化程序设计主要强调的是______。
A、程序的规模
B、程序的易读性
C、程序的执行效率
D、程序的可移植性
结构化程序设计主要强调的是结构化程序清晰易读,可理解性好,程序员能够进行逐步求精、程序证明和测试,以保证程序的正确性。
本题答案为B。
6、数据库设计包括两个方面的设计内容,它们是______。
A、概念设计和逻辑设计
B、模式设计和内模式设计
C、内模式设计和物理设计
D、结构特性设计和行为特性设计
数据库设计可分为概念设计与逻辑设计。
数据库概念设计的目的是分析数据间内在语义关联,在此基础上建立一个数据的抽象模型。
数据库逻辑设计的主要工作是将ER图转换为指定的RDBMS中的关系模型。
本题答案是A。
7、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为______。
A、static void method( )
B、public void method( )
C、final void method( )
D、abstract void method( )
本题考查的是修饰符的含义。
a、public修饰的方法可被其它类访问或引用。
b、abstract修饰的方法是抽象方法,抽象方法没有方法体,要使用抽象方法,必须先实现此抽象方法。
c、final修饰的方法不能被继承。
d、static修饰的方法为静态方法,静态方法不需要类的实例化就可以被类直接调用。
故要使得类名AB可以直接调用method()方法,则必须在method()前用static来修饰。
故本题答案为A。
8、监听器接口的方法返回值的类型是______。
A、int
B、String
C、void
D、Object
本题考查的是监听器。
每个事件都有自己的监听器,监听器本身是一种接口,该接口中的方法,返回值是void类型。当要为指定的类注册监听器时,就可以通过定在实现该接口的类中定义该方法,这样可以在某个事件发生后,将会自动执行相应方法中的代码。
故本题答案为C。
9、outer: for(int i=0;i<3; i++)
inner: for(int j=0;j<2;j++)
{
if(j==1) continue outer;
System.out.println(j+ "and "+i+";");
}
以上代码输出是 。
A、0 and 0;0 and 1;0 and 2;
B、0 and 0;1 and 0;2 and 0;
C、1 and 0;1 and 1;1 and 2;
D、2 and 0;2 and 1;2 and 2;
本题考查的是多重循环。
首先介绍一下continue语句的功能:continue语句是跳过循环体中下面尚未执行的语句,回到循环体的开始,继续下一轮的循环。
本题程序运行过程如下:
i=0:
j=0 条件j==1不成立,输出j和i,即0 and 0;
j=1 条件j==1成立,执行continue,跳过System.out.println(j+ "and "+i+";");执行下一轮循环j=2;
j=2 条件j<2不满足,退出内层循环,继续外层循环。
i=1:
j=0 条件j==1不成立,输出j和i,即0 and 1;
j=1 条件j==1成立,执行continue,跳过System.out.println(j+ "and "+i+";");执行下一轮循环j=2;
j=2 条件j<2不满足,退出内层循环,继续外层循环。
i=2:
j=0 条件j==1不成立,输出j和i,即0 and 2;
j=1 条件j==1成立,执行continue,跳过System.out.println(j+ "and "+i+";");执行下一轮循环j=2;
j=2 条件j<2不满足,退出内层循环,继续外层循环。
i=3:条件i<3不满足,结束。
故本题答案为A。
【5】
编程题
1、 编写一个Java Application 程序App.java,main程序输入10个整数给数组,通过函数getMinAndMax(int a[])得到这10个整数的最大值和最小值并输出结果。
class App {
static void getMinAndMax(int a[]) {
int min,max;
min = max = a[0];
for(int i=1;i if(a[i]>max)
max=a[i];
if(a[i] min=a[i]; }
System.out.println(“Array’Max Value:”+max);
System.out.println(“Array’Min Value:”+min);
}
public static void main(String[] args) {
int arr[] = {4,6,72,9,14,3,8,23,56,32};
getMinAndMax(arr); } }
2、编写一个完整的Java Application 程序。包含接口ShapeArea, Rectangle
类,Triangle类及Test类,具体要求如下:
⑴接口ShapeArea:
double getArea( ):
求一个形状的面积
double getPerimeter ( ):
求一个形状的周长
⑵类 Rectangle:实现ShapeArea接口,并有以下属性和方法:
① 属性
width: double类型,表示矩形的长 height: double类型,表示矩形的高
② 方法
Rectangle(double w, double h):构造函数
toString( )
方法 :输出矩形的描述信息,如“width=1.0,height=2.0, perimeter=6.0, area=2.0”
⑶类Triangle:实现ShapeArea接口,并有以下属性和方法:
① 属性
x,y,z: double型,表示三角形的三条边
s: 周长的1/2(注:求三角形面积公式为))( )((zsysxss,s=(x+y+z)/2 ,开方可用Math.sqrt(double)方法)
② 方法
Triangle(double x, double y, double z):
构造函数,给三条边和s赋初值。
toString( ):
输出矩形的描述信息,如“three sides:3.0,4.0,5.0,perimeter=12.0,area=6.0”
⑷Test类作为主类要完成测试功能
① 生成Rectangle对象
②
调用对象的toString方法,输出对象的描述信息
interface ShapeArea { double getArea( );
double getPerimeter( );
}
class Rectangle implements ShapeArea { double width,height;
Rectangle(double w,double h) {ko width =w;
height=h;
}
public void toString( )
{
System.out.println("width="+width+",height="+height+", perimeter="+ getPerimeter( )+", area="+ getArea( ));
}
public double getArea( )
{ return width*height;
}
public double getPerimeter( )
{ return 2*(width+height);
} }
class Triangle implements ShapeArea { double x,y,z,s; Triangle(double x, double y, double z) { this.x =x; this.y=y;
this.z=z; s = (x+y+z)/2; }
public void toString( )
{
System.out.println("Three Sides:"+x+","+y+","+z+",Perimeter="+ getPerimeter( )+", area="+ getArea( ));
}
public double getArea( )
{
return Math.sqrt(s*(s-x)*(s-y)*(s-z));
}
public double getPerimeter( )
{ return x+y+z;
} }
class test { public static void main(String[] args) { Rectangle rct = new Rectangle(4,5);
rct.to_String( );
} }
考无忧小编为大家介绍一款实用的考无忧网校:计算机等级考试题库,涵盖了计算机等级各方面内容,同样所有习题交互式答题,有答案,有解析,相信会在您的备考道路上,助您一臂之力!以上的二级Java试题,也会助您考试成功的!
文章推荐:
2018年全国计算机等级考试题库“二级MS Office 高级应用考试大纲”
全国计算机等级考试报考成功后可以退费吗?(内附计算机等级考试题库)
温馨提示:
考试想拿高分吗?更多计算机等级考试题库二级ms office试题请点击查看>>>二级ms office
想要了解更多的计算机等级考试题库请点击下载>>>计算机等级考试题库
想知道更多关于计算机等级考试题库的最新资讯吗?点击进入>>>计算机等级考试题库资讯