是不是急于做大量的计算机等级考试题库,却因测试结果不尽人意而心慌不安?不要急!考无忧小编为大家准备了一些二级java试题,希望能帮助大家高效复习,轻松通关!
文章推荐:
2018年全国计算机等级考试题库“二级MS Office 高级应用考试大纲”
全国计算机等级考试报考成功后可以退费吗?(内附计算机等级考试题库)
温馨提示:
考试想拿高分吗?更多计算机等级考试题库二级ms office试题请点击查看>>>二级ms office
想要了解更多的计算机等级考试题库请点击下载>>>计算机等级考试题库
想知道更多关于计算机等级考试题库的最新资讯吗?点击进入>>>计算机等级考试题库资讯
计算机二级java试题
【1】
1、用Access创建的数据库文件,其扩展名是___D___。
A..adp
B..dbf
C..frm
D..mdb
2、数据库系统的核心是___B___。
A.数据模型
B.数据库管理系统
C.数据库
D.数据库管理员
3、数据库系统是由数据库、数据库管理系统、应用程序、___A___、用户等构成的人机系统。
A.数据库管理员
B.程序员
C.高级程序员
D.软件开发商
4、在数据库中存储的是___B___。
A.信息
B.数据
C.数据结构
D.数据模型
5、在下面关于数据库的说法中,错误的是___D___。
A.数据库有较高的安全性
B.数据库有较高的数据独立性
C.数据库中的数据可以被不同的用户共享
D.数据库中没有数据冗余
6、下面关于新型数据库的说法中,错误的是___C___。
A.数据仓库不是一个新的平台,仍然使用传统的数据库管理系统,而是一个新的概念
B.分布式数据库是一个数据在多个不同的地理位置存储的数据库
C.面向对象数据库仍然采用传统的关系型数据库管理系统
D.空间数据库是随着地理信息系统gis的开发和应用而发展起来的数据库新技术
7、不是数据库系统特点的是___C___。
A.较高的数据独立性
B.最低的冗余度
C.数据多样性
D.较好的数据完整性
8、在下列数据库管理系统中,不属于关系型的是___D___。
A.MicorsoftAccess
B.SQLserver
C.Oracle
D.DBTG系统
9、Access是___C___数据库管理系统。
A.层次
B.网状
C.关系型
D.树状:
10、在Access中,数据库的基础和核心是__A____。
A.表
B.查询
C.窗体
D.宏
【2】
1.下列关于栈叙述正确的是()。
A.栈顶元素能最先被删除
B.栈顶元素最后才能被删除
C.栈底元素永远不能被删除
D.以上三种说法都不对
2.下列叙述中正确的是()。
A.有一个以上根结点的数据结构不一定是非线性结构
B.只有一个根结点的数据结构不一定是线性结构
C.循环链表是非线性结构
D.双向链表是非线性结构
3.某二叉树共有7个结点,其中叶子结点只有l个,则该二叉树的深度为(假设根结点在第1层)()。
A.3
B.4
C.6
D.7
4.在软件开发中,需求分析阶段产生的主要文档是()。
A.软件集成测试计划
B.软件详细设计说明书
C.用户手册
D.软件需求规格说明书
5.结构化程序所要求的基本结构不包括()。
A.顺序结构
B.GOT()跳转
C.选择(分支)结构
D.重复(循环)结构
6.下面描述中错误的是()。
A.系统总体结构图支持软件系统的详细设计
B.软件设计是将软件需求转换为软件表示的过程
C.数据结构与数据库设计是软件设计的任务之一
D.PAD图是软件详细设计的表示工具
7.负责数据库中查询操作的数据库语言是()。
A.数据定义语言
B.数据管理语言
C.数据操纵语言
D.数据控制语言
8.一个教师可讲授多门课程,一门课程可由多个教师
讲授。则实体教师和课程间的联系是()。
A.1:l联系
B.1:m联系
C.m:1联系
D.m:n联系
9.有三个关系R、S和T如下:
则由关系R和S得到关系T的操作是()。
A.自然连接
B.交
C.除
D.并
10.定义无符号整数类为UInt,下面可以作为类UInt实例化值的是()。
A.-369
B.369
C.0.369
D.整数集合{1,2,3,4,5}
1.A。【解析】栈是限定在一端进行插入、删除的先入后出的线性表数据结构,栈顶元素最后被插入到栈中,但是最先被删除;而栈底元素最先被插入,最后被删除。
2.D。【解析】线性表的特点是:在数据元素的非空有限集合中;存在唯一的一个被称为“第一个”的数据元素;存在唯一一个被称为“最后一个”的数据元素;除第一个以外,集合中的每个数据元素均只有一个后继;除最后一个以外,集合中的每个数据元素均只有一个后继。因此,双向表是非线性结构。
3.D。【解析】对于任意一棵二叉树T,如果叶子结点数为n0,度为2的结点数为n2,二者之间的关系是n0=n2+1,该题中度为2的结点数为0,且只有一个叶子结点,因此,树中度为l的结点有6个,很容易想到树的高度为7。
4.D。【解析】需求分析阶段只能产生需求分析规格说明数,A测试说明书是软件测试阶段生成的,B软件详细设计说明书是设计阶段生成的,C用户手册是软件发布时随软件一同交付给用户的。
5.B。【解析】结构化程序设计的三种结构是顺序、分支和循环,不包括goto跳转,它只是分支结构的一种,也是一个关键字。
6.A。【解析】软件系统的总体结构图是软件架构设计的依据,它并不能支持软件的详细设计。
7.C。【解析】数据库操纵语言专门负责查询、增加和删除等数据操作。
8.D。【解析】一个教师可以上多门课程,一门课程也可以由多个教师教授,这是典型的多对多的E—R关系。
9.C。【解析】S中的关系全部出现在R中,只有做除法操作才会出现关系T。
10.B。【解析】A是有符号数,C是浮点数,D是集合,并不是类的实例化对象,只有B完全符合。
【3】
1.下列关于面向对象的论述中,正确的是()。
A.面由对象是指以对象为中心,分析、设计和实现应用程序的机制
B.面向对象是指以功能为中心,分析、设计和实现应用程序的机制
C.面向对象仅适用于程序设计阶段
D.面向对象是一种程序设计语言
2.语句"Hell0".equals("hell0");的正确执行结果
publicstaticvoidmain(String[]args){
int[]x={0,1,2,3};
for{inti=0;i<3;1+=2){
try{
systcm.OUt.println(x[i+2]/x[i]+x[i+1]);
}catch(ArithmeticExceptione){
System.OUt.println("errorl"):
}catch(Exceptione){
System.OUt.println("error2"):
}
}
}
}
A.errorl
B.error2
C.errorl
D.2
orror2error2
6.下列整数的定义中,错误的是()。
A.intf=34.;
B.inta=012;
C.inti=189;
D.intd=0x123;
7.要得到某目录下的所有文件名,在下列代码的下画
线处应填入的内容是(两个下画线的填写内容相同)()。
pathName=new(args[o]);
String[]fileNames=pathName.list();
A.FilefnputStreamB.FileOutputStream
C.FileD.RandomAccessFile
8.在下列代码的下i画线处应填人的内容是()。
publicclassFirstSample{
publicstaticvoidmain(args[]){
System.out.println("你好!");
}
}
A.staffB.double
C.intD.String
9.Object类中的方法publicinthashCode[],在其子类中
覆盖该方法时,其方法修饰符可以是()。
A.protectedB.public
C.privateD.缺省
10.下列代码中的内部类名是()。
importjava.awt.event.*;
lapoctjavax.swin9.*;
classTalkingClock(
publicvoidstart(intinterval,finalbooleanbeep){
ActionListenerlistener=new
ActionListener(){
publicvoidactionPerformed(ActionEvente-
vent){
…
}
}
Timert=newTimer(interval,listener);
t.start();
}
}
A.Timer
B.ActionListener
C.1istener
D.匿名
1.A。【解析】面向对象是一种程序设计方式,Java、C++是面向对象设计的语言,而C是面向过程设计的语言。面向对象设计适应于设计、编码、实现、测试等一系列环节。
2.B。【解析】Java是强类型检查语言,字符串的equals方法执行的返回值是true或者false。
3.B。【解析】一个文件的public类最多可以有一个,但是可以包含多个import,包含的接口定义也可以有多个,包含的class类可以有多个,当该文件命名时,可以以public类名来命名,反之编译之后将有多个.class文件生成。
4.D。【解析】Java的关键字中不包含NULL,它是C语言的关键字,表示空。
5.C。【解析】当0作为除数时,会产生异常,而ArithmeticException和Exception两类异常都内部被捕捉到。
6.A。【解析】整数的定义不能带小数点,表明是一个浮点数;其他三个都正确。
7.C。【解析】使用File类的list方法可以获得目录下所有文件名称,FileInputStream和FileOutputStream类都不具有list方法。
8.D。【解析】这是学习Java语言接触的第一个程序,main函数的参数是Stringargs[]。
9.B。【解析】所有的类都是Object的子类,如果要覆盖Object的equals方法则必须覆盖hasCode方法,覆盖时的属性是public。
10.B。【解析】内部类就是在类内部重新定义的新类,该类能连接外部类,但是不能和外部类进行通信。AetionL.istenser有自己的类方法体,而Timer没有,只是实例化了一个Timer对象。
【4】
1.已知zipname是一个压缩文件名。则zipname在下列代码中出现的正确位置是()。
ZipInputStreamzin=
newZipInputStzeam(newFileInputStream(①));
ZipEntryentry;
while((entry=zin.getNextEntry(②))!=null){
fileCombo.addltem(entry.getNamc(③));
zin.closeEntry(④);
}
zin.close();
A.①
B.②
C.③
D.④
2.下列代码的执行结果是()。
intnumbers[]=newint[6];
for(inti=1;inumbers[[i]=i-1;
Systern.OUt.print(numbers[I]+"");
A.012345
B.123456
C.01234
D.12345
3.JavaAPIee支持线程的类或接口是()。
Ⅰ.java.lang.Thread
Ⅱ.java.lang.Runnable
Ⅲ.java.lang.ThreadGroup
IV.java.io.Serializable
A.I,ⅡB.I,Ⅱ,Ⅲ
C.I,Ⅱ,IVD.I,Ⅱ,Ⅲ,Ⅳ
4.下列关于Test类的定义中,正确的是()。
A.classTestimplementsRunnable{
publicvoidrun(){}
DublicvoidsomeMethod[]{}
}
B.classTestimplementsRunnable(
puIblicvoidrun();
}
C.classTestimplementsRunnable(
DublicvoidsomeMethod[];
}
D.classTestimplementsRunnable(
publicvoidsomeMethod(){}
}
5.下列方法被调用后,一定使调用线程改变当前状态的是()。
A.notify()
B.yield()
C.sleep()
D.isAlive()
6.在堆栈类Sharedstack的定义中,为了保证堆栈在并发操作中数据的正确性,应在下画线处填入的修饰符是(两个下画线的填写内容相同)()。
publicclassSharedStack{
intidx=0;
char[]data=newchar[10];
publicsynchtonizedvoidpush(charc){……}
publR,synchronizedvoidpop(){……}
}
A.Dublic
B.不使用修饰符
C.private
D.protected
7.关于下列代码编译或执行结果的描述中,正确的是()。
publicclassTest{
publicstaticvoidmain(StringargsE]){
TcstThreadpml=newTestThread("One")
pml.start();
TestThreadpm2=newTestThread("Tw0")
pm2.start();
}
}
classTestThreadextendsThread(
privateStringsTname="";
TestThread(Strings){
sTname=s;
}
publicvoidrun(){
for(inti=O;i<2;i++){
try{
sleep(1000);
}catch(InterruptedExceptione){}
system.out.print(sTname+"");
}
}
}
A.不能通过编译,TestThread类中不能定义变量和构造方法
B.输出OneOneTwoTwo
C.输出TwoOneOneTwo
D.选项B或C都有可能出现
8.下列关于Applet的叙述中,正确的是()。
A.为了使Applet在浏览器中运行,需要在HTML文件中嵌入相应的Applet类
B.Applet不能从外部接收参数
C.Applet不能使用javac命令进行编译
D.JavaApplication与Applet都必须包含main()方法
9.下列代码的下画线处应填入的方法名是()。
importjava.awt.*;
importjava.applet.*;
publicclassHelloextendsApplet{
publicvoid(Graphicsg){
9.drawstring("Howareyou!",l0,10);
}
}
A.repaintB.println
C.paintD.show
10.下列变量的定义中,错误的是()。
A.intX=3;
B.floatf;d;
C.Strings="Hell0";
D.booleanb=true;
1.A。【解析】该程序的功能是从zip压缩文件中获取各个文件的名字。因此应该在A处。
2.C。【解析】该题是简单的for循环考题,通过逐一判断可得到答案,数组的长度是6,数组的内容从下标1开始,最大循环是5,numbers[5]的值是4。
3.A。【解析】java.lang.Thread类和java.lang.Runnable是创建线程的两个方法,分别是实现Thread类和继承Runnable接口,而ThreadGroup类是管理一组线程的类。而Serializable是序列化,将一个对象的状态保存起来,在适当的时候再获得,它不支持线程。
4.A。【解析】java中实现多线程的方法之一就是实现Runnable接口中的run方法,把实现Runnable接口的子类对象传递给Thread类的构造函数。
5.C。【解析】线程调用sleep函数后,使当前线程进入停滞状态。yield函数可使线程进入可执行状态,排程器从可执行状态的线程中重新排程,调用了yield函数的线程有可能被马上执行,也有可能不会马上执行。notify函数从线程等待池中移走任意一个线程,并把它放到锁标志等待池中,其状态仍旧是等待。所以只有sleep一定会改变线程状态。
6.C。【解析】堆栈中为了保证访问数据的一致性,应该对类的数据进行封装,而实现类数据封装的级别是private。
7.D。【解析】启动两个线程,线程之间没有进行同步,所以B和C均有可能。
8.A。【解析】applet程序必须在浏览器中运行,因此它需要支持applet类,而applet程序可以接受外部参数,可以使用javac编译,但是可以不用包含main函数。
9.C。【解析】这里使用一个继承自Applet的类来显示字符。主要方法是在paint()方法中使用System.out.println()显示。
10.B。【解析】正确的方法是floatf,d;,中间应该使用“,”而不是“;”,因为在Java中“;”表示一个语句结束。
【5】
1.下列代码的执行结果是()。
intlength="Hell0".length();
System.OUt.println(length);
A.5
B.2
C.10
D.6
2.下列代码的编译或执行结果是()。
publicclassMyval{
publicstaticvoidmain(stringargs[]){
MyValm=newMyVal();
m.aMethod();
}
publicvoidaMethod(){
booleanb[]=newBoolean[5];
System.OUt.println(b[0]);
}
}
A.1
B.null
C.0
D.编译错误
3.若变量a是String类型的数据,那么表达式(a+a)的类型是()。
A.char
B.String
C.int
D.long
4.Component类中用于刷新组件的方法是()。
A.getFont()
B.getName()
C.update()
D.paint()
5.鼠标在窗口中移动时,产生的事件是()。
A.ActionEvent
B.PrintEvent
C.KeyEvent
D.MouseEvent
6.一棵二叉树的中序遍历结果为DBEAFC,前序遍历结果为ABDECF,则后序历结果为()。
A.ACFBED
B.DFBECA
C.ABCDEF
D.DEBFCA
7.在关系A(S,SN,D)和关系B(D,CN,NM)中,A的主关键字是S,B的主关键字是D,则关系A的外码是()。
A.CN
B.SN
C.S
D.D
8.若类声明加上()修饰符,则表示该类不能有子类。
A.close
B.final
C.down
D.end
9.在对象流中,对象的传送首先要将所传送的对象串行化,也就是实现Serializable接口。下列代码中必须实现Serializable接口的类是()。
obiectInputin=
newObjectlnputStream(newFileInputStream("am-
ployee.dat"));
Employee[]newStaff=(Employee[1]in.readobject();
A.EmployeeB.Input
C.StaffD.Stream
10.下列代码的执行结果是()。
publicclassExpression{
publicstaticvoidmain(Stringarga[](
Intvl=10,v2=99,v3=0;
System.Out.prIntln((vl}
}
A.9.9
B.3
Cfalse
D.true
1.A。【解析】字符串"Hello"的长度是5,java在计算字符串长度时只计算实际字符串长度。
2.A。【解析】boolean类型的变量值只有ture或false,b[0]的默认初始值为false。
3.B。【解析】Java中允许两个String类型进行+运算,其结果仍旧是String类型。
4.C。【解析】getFont方法用来获取字体,getName方法用于获取组件的名字,paint方法用于绘制组件,update方法用于刷新组件。
5.D。【解析】鼠标在窗口中移动产生的事件是MouseEvent事件,ActionEvent是动作事件处理,PrintEvent是打印事件,KeyEvent是键盘事件。
6.D。【解析】这类题型一般通过前序遍历的结果来找根结点,用中序遍历的结构找分支结点,通过画出该二叉树可得到结果。
7.D。【解析】外码用于建立和加强两个关系之间的连接,通过将保存关系中主键值的一列或多列属性添加到另一个关系中,可建立两个关系之间的联系,这个列属性称为第二关系的外码。
8.B。【解析】如果一个类被final修饰符修饰说明这个类不可能有子类,被定义为final的类通常是一些有固定作用,用来完成某种标准功能的类。
9.A。【解析】一个对象能够实现序列化的前提是实现Serializable接口,Serializable接口没有方法,更像是一个标记,有了这个标记的Class才能被序列化机制处理。
10.C。【解析】此题后半部分除数是0,按常理说应该报异常,且不会得出结果。但是在计算&&运算时采用了部分结果方法,即先运算前半部分,如果前半部分为假,则不必计算后半部分,整个结构为假,如果前半部分为真,这时才计算后半部分的值,在此,前部分已经为假,所以结果就不用计算后半部分。
【6】
1.下列叙述中正确的是()。
A.线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的
B.线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构
C.线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构
D.上述三种说法都不对
2.下列叙述中正确的是()。
A.在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化
B.在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化
C.在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化
D.上述三种说法都不对
3.软件测试目的是()。
A.评估软件可靠性
B.发现并改正程序中的错误
C.改正程序中的错误
D.发现程序中的错误
4.下面描述中,不属于软件危机表现的是()。
A.软件过程不规范
B.软件开发生产率低
C.软件质量难以控制
D.软件成本不断提高
5.软件生命周期是指()。
A.软件产品从提出、实现、使用维护到停止使用退役的过程
B.软件从需求分析、设计、实现到测试完成的过程
C.软件的开发过程
D.软件的运行维护过程
6.面向对象方法中,继承是指()。
A.一组对象所具有的相似性质
B.一个对象具有另一个对象的性质
C.各对象之间的共同性质
D.类之间共享属性和操作的机制
7.层次型、网状型和关系型数据库划分原则是()。
A.记录长度
B.文件的大小
C.联系的复杂程度
D.数据之间的联系方式
8.一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是()。
A.一对一
B.一对多
C.多对多
D.多对一
9.数据库设计中反映用户对数据要求的模式是()。
A.内模式
B.概念模式
C.外模式
D.设计模式
10.有三个关系R、S和T如下:
则由关系R和S得到关系T的操作是()。
A.自然连接
B.交
C.投影
D.并
1.B。【解析】与顺序存储结构相比,线性表的链式存储结构需要更多的空间存储指针域,因此,线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构。
2.C。【解析】栈是限制仅在表的一端进行插入和删除的运算的线性表,通常称插入、删除的这一端为栈顶,另一端称为栈底。
3.D。【解析】软件测试的目的主要是在于发现软件错误,希望在软件开发生命周期内尽可能早地发现尽可能多的bug。
4.A。【解析】①对软件开发的进度和费用估计不准确;②用户对已完成的软件系统不满意的现象时常发生;③软件产品的质量往往靠不住;④软件常常是不可维护的;⑤软件通常没有适合的文档;⑥软件成本在计算机系统总成本中所占的比例逐年上升;⑦软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
5.A。【解析】软件生命周期(SDLC,SystemsDevelopmentLifeCycle,SDLC)是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段。
6.D。【解析】继承:在程序设计中,继承是指子类自动享用父类的属性和方法,并可以追加新的属性和方法的一种机制。它是实现代码共享的重要手段,可以使软件更具有开放性和可扩充性,这是信息组织与分类的行之有效的方法,也是面向对象的主要优点之一。继承又分为单重继承和多重继承。单重继承是指子类只能继承一个父类的属性和操作;而多重继承是指子类可以继承多个父类的属性和操作。Java是一种单重继承语言,而C++是一种多重继承语言。
7.D。【解析】层次型、网状型和关系型数据库划分的原则是数据之间的联系方式。
8.C。【解析】一个工作人员对应多台计算机,一台计算机对应多个工作人员,则实体工作人员与实体计算机之间的联系是多对多。
9.C。【解析】外模式,也称为用户模式。在一个数据库模式中,有N个外模式,每一个外模式对应一个用户。外模式保证数据的逻辑独立性。内模式属于物理模式,因此,一个数据库只有一个内模式;内模式规定了数据的存储方式、规定了数据操作的逻辑、规定了数据的完整性、规定了数据的安全性、规定了数据的存储性能。
10.A。【解析】自然连接是将表中具有相同名称的列自动进行记录匹配。
不要着急!不要迷茫!不要彷徨!考无忧小编送福利~计算机等级考试题库。以上是一些计算机二级java试题,希望能帮到你们~