国家二级(JAVA)笔试模拟试卷73(题后含答案及解析)_第1页
国家二级(JAVA)笔试模拟试卷73(题后含答案及解析)_第2页
国家二级(JAVA)笔试模拟试卷73(题后含答案及解析)_第3页
国家二级(JAVA)笔试模拟试卷73(题后含答案及解析)_第4页
国家二级(JAVA)笔试模拟试卷73(题后含答案及解析)_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

国家二级(JAVA)笔试模拟试卷73(题后含答案及解析)题型有:1.选择题2.填空题选择题(每小题2分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。1.算法的时间复杂度是指()。A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程中所需要的基本运算次数D.算法程序中的指令条数正确答案:C解析:本题考查算法的时间复杂度,这个知识点是本章的重点考点之一,考生应该好好理解掌握。算法的时间复杂度是指执行算法所需要的计算工作量,也就是算法在执行过程中所执行的基本运算的次数,而不是指程序运行需要的时间或是程序的长度。2.下列叙述中不正确的是()。A.一个数据结构中的元素在计算机存储空间中的位置关系与逻辑关系可能不同B.一个数据结构中的元素在计算机存储空间中的位置关系与逻辑关系一定不同C.数据的存储结构,也称数据的物理结构D.数据的存储结构与数据的逻辑结构是不同的正确答案:A解析:一个数据结构中的元素在计算机存储空间中的位置关系与逻辑关系不一定相同,例如在家庭成员的数据结构中,“儿子”和“女儿”都是“父亲”的后件,但在计算机存储空间中,根本不能将“儿子”和“女儿”这两个数据元素的信息都紧邻存放在“父亲”这个数据元素后边。但在一年四季的数据结构中,“春”是“夏”的前件,在计算机存储空间中,就可以把“春”存储在“夏”的前面。数据在计算机存储空间中的存放形式称为数据的存储结构,也称数据的物理结构。3.下列数据结构不属于线性表的是()。A.一个n维向量B.矩阵C.二叉树D.队列正确答案:C解析:n维向量、矩阵、队列都满足线性表的要求:只有一个根节点,它无前件;只有一个终端节点,它无后件。除根节点和终端节点外,其他节点都有且只有一个前件,也有且只有一个后件。所以它们都是线性表。二叉树不满足线性表所要求的除根节点和终端节点,其他节点都有且只有一个前件,也有且只有一个后件的条件,所以答案是C。4.在一棵度为3的树中,度为3的结点有2个,度为2的结点有1个,度为1的结点有2个,那么,该树的叶子结点数目为()。A.4B.5C.6D.7正确答案:B解析:假设根结点度为0时,叶结点数为1;若树中每出现1个度为1的结点,则叶子数增加0个,每出现1个度为2的结点,叶子数增加1个,每出现1个度为3的结点,则叶子数增加2个……依此类推,每个度为m的结点,可增加m-1个叶子数。5.结构化程序设计所规定的3种基本控制结构是()。A.输入、处理、输出B.树形、网形、环形C.顺序、选择、循环D.主程序、子程序、函数正确答案:C解析:本题涉及结构化程序设计的3种基本控制结构,考生应该掌握这些基本的东西。结构化定理还进一步表明,任何一个复杂问题的程序设计都可以用顺序、选择和循环这3种基本结构组成,且它们都具有以下特点:只有一个入口;只有一个出口;结构中无死循环。程序中3种基本结构之间形成顺序执行关系。6.信息隐蔽的概念与下述哪种概念直接相关?()A.软件结构定义B.模块独立性C.模块类型划分D.模块耦合度正确答案:B解析:在面向对象方法中,信息隐蔽是通过对象的封装来实现的,因此信息隐蔽的概念与模块独立性直接相关,模块独立性越好,则信息隐蔽性越好。7.下列关于软件工程概念的描述中,错误的是()。A.软件工程概念的出现源自软件危机B.软件工程就是试图用工程、科学和数学的原理与方法研制,维护计算机软件的有关技术及管理方法C.软件工程包括3个要素,即方法、工具和过程D.软件工程不重视在软件开发过程中应用工程化原则正确答案:D解析:软件工程是个重要概念,考生应在理解的基础上掌握。选项A、B、C都是正确的。软件工程强调在软件开发过程中应用工程化原则,选项D是错误的。8.软件测试的目的是()。A.证明软件系统中存在错误B.找出软件系统中存在的所有错误C.尽可能多地发现软件系统中的错误和缺陷D.证明软件的正确性正确答案:C解析:软件测试的目的不是证明系统的正确或是系统的错误,而是要发现错误以便编程人员能够改正。系统中的错误和缺陷往往受到很多偶然因素的影响,不可能完全发现,只能是尽可能地去发现并加以改正。9.数据是指所有能输入到计算机中并被计算机程序处理的()。A.文字B.字母C.符号D.数字正确答案:C解析:数据不是指某一种文字、字母或数字,实际上就是描述事物的符号记录,是抽象的概念。10.请指出在顺序表{2、5、7、10、14、15、18、23、35、41、52}中,用二分法查找关键码12须做()次关键码比较。A.2B.3C.4D.5正确答案:C解析:二分法查找首先用要查找的关键字k与中间位置的结点关键字相比较,这个中间结点把线性表分成了两个子表,若比较结果相等,则查找完成,若不等,再根据k与中间结点关键字的比较结果确定下一步查找哪个子表,这样递归下去,直到找到满足条件的结点,或者该线性表中没有这样的结点。本题中第1次和15比较;第2次和7比较;第3次和10比较;第4次和14比较。比较后结束,没找到。11.在Java程序中需要使用随机数类,需要引入的类库是()。A.java.langB.java.ioC.D.java.util正确答案:D解析:本题考查Java的API结构。选项A错误,java.lang类库在所有的JavaAPI中是最重要的,它提供Java语言中Object、String和Thread等核心类与接口:选项B错误,java.io类库提供系统用来读写文件或其他输入输出源的输入输出流;选项C错误,类库包含一些与网络相关的类和接.口:选项D正确,java.util提供包含实用程序性质的语言支持类,如数据结构类、日期类、随机数类、属性类、观测器类等。12.以下有关Java语言叙述中不正确的是()。A.Java是一种跨平台的面向对象的语言B.Java是新一代编程语言,具有很多优点:简单、面向对象、可移植、与硬件无关、强健安全、具有很高的性能,此外还对多线程、动态性提供了支持C.Java解释器生成与体系结构无关的字节码结构的文件格式,只需提供相应的Java运行系统,程序便能在任何种类的处理器上运行D.Java语言支持多线程。多线程使得应用程序可以同时进行相同的操作,处理多个同一的事件正确答案:D解析:本题考查对Java基本特点的理解。选项A正确,Java最大的特点是跨平台、面向对象;选项B正确,Java具有简单、面向对象、分布式、解释执行、垃圾收集、安全、平台无关、可移植、高性能、多线程、动态性等特点:选项C正确,Java的平台无关性在于其解释器生成的字节码结构的文件格式与硬件体系无关,可以在任何种类的处理器上运行:选项D错误,多线程是Java的一个主要特性,它使可执行程序具有保持几个线程同时执行的能力,不要把它与多任务混淆,多任务是指操作系统可以同时运行多个程序,而多线程可允许应用程序同时做几个不同的操作,处理多个不同的事件。13.面向对象程序设计有许多特性,下列不是面向对象程序设计特性的是()。A.多态性B.静态性C.封装性D.继承正确答案:B解析:本题考查面向对象特点的理解。选项A、C、D正确,面向对象是一种认识世界的方法,也是一种程序设计的方法。面向对象思想是以对象为中心进行程序设计,具有抽象、封装、继承和多态性等特点;选项B错误,面向对象用于不断发展的环境中,它能包含新的功能,因而必须是动态的。14.有一个接口定义如下:interfaceA{intmethod1(inti);intmethod2(intj);}那么下面各项中实现了该接口并且不是抽象类的是()。A.classBimplementsA{intmethod1(){}intmethod2(){}}B.calssB{intmethod1(inti){)intmethod2(intj){}}C.classBimplementsA{intmethod1(inti){}intmethod2(intj){}}D.classBextendsA{intmethod1(inti){}intmethod2(intj){}}正确答案:C解析:本题考查在Java中如何实现接口。在类的声明中用implements子句来表示一个类使用某个接口,也就是通常所说的实现了某个接口。在类体中可以使用接口中定义的常量,但是必须实现接口中定义的所有方法。选项A错误,在方法内没有参数值,本身就是错误的;选项B错误,并没有实现与A的接口;选项C正确,符合题目要求;选项D错误,extends是用来继承父类的,而A并不是一个类,不能用extends。本题的答案是C。15.下列各选项中不属于Java保留字的是()。A.ifB.sizeofC.privateD.null正确答案:B解析:在Java语言中有…些标识符是具有专门意义和用途的,小允许作为一般标识符使用,它们是保留字。B选项中sizeof是C++语言的保留字,但不是Java的保留字。16.下面各选项中正确的是()。Ⅰ:long1=4990Ⅱ:inti=4LⅢ:floatf=1.1Ⅳ:doubled=4A.Ⅱ、ⅢB.Ⅱ、Ⅲ、ⅣC.Ⅰ、ⅣD.Ⅲ、Ⅳ正确答案:C解析:此题的考点是数字的表示方法和基本数据类型间的自动转换。没有小数点的数字被认为是int型数,带有小数点的数被认为是double型的数,其他的使用在数字后面加一个字母表示数据类型,加l或者L是long型,加d或者D是double,加f或者F是float。可以将低精度的数字赋值给高精度的变量,反之,则需要进行强制类犁转换。例如,将int、short、byte型数字赋值给long型变量时不需要显式的类型转换,反之,将long型数字赋值给byte、short、int型变量时需要强制转换(inta=(int)123L)。IntI=4L不对,应该去掉后面的L,doubled-34.4需要在后面加do17.下列关于Java简单数据类型的说法中,不正确的是()。A.short类型的数据占有16位的存储空间B.float类型的数据占有32位的存储空间C.boolean类型的数据占有1位的存储空间D.long类型的数据占有32位的存储空间正确答案:D解析:long类型的数据占有64位的存储空间,在编写程序时要注意,对于long类型常量在书写时,应该在数字后面加上1或L。18.设x=1,y=2,z=3,则表达式y+=z--/++x的值是()。A.3B.3.5C.4D.5正确答案:B解析:本题考查对运算符优先级的掌握。赋值运算总是等号右边的运算先于等号左边的运算。叩++(op--)表示先取操作数的值,然后再对它进行加1(减1)操作;而++p(--p)表示先将操作数的值加1(减1),然后再取其值。本题的表达式相当于y=2+3/(1+1),结果为3.5。19.数组arr经过下面的操作后结果为()。int[]arr={1,2,3};for(inti=0;i<2;i++)arr[i]=0;A.arr[0]==0B.arr[0]==1C.arr[1]==1D.arr[2]==0正确答案:A解析:本题考查对数组定义和初始化的理解。本题中,定义了整型数组arr,并且在定义的时候就将之初始化了,然后在for语句里再将之重新赋值,但是for语句只对数组中的第1和第2个元素赋值为0,第3个元素则没有赋值。所以语句运行完之后,应该是arr[0]和arr[1]为0,而arr[2]为3。20.以下选项中,()是合法的字符常量。A.NB.’\010’C.68D.d正确答案:B解析:本题考查字符型常量的表示。选项A是字符串的表示方法;选项B所表示的是一个转义字符,是特殊的字符常量;选项C中所表示的是整型常量;选项D中不是常量的表示。故本题答案是B。21.以下程序段输出结果为()。classtest_1{publicstaticvoidmain(Stringargs[]){intx=0;booleanbl,b2,b3,b4;b1=b2=b3=b4=true;x=(b1|b2&b3^b4)?x++:--x;System.out.println(x);}}A.1B.0C.2D.3正确答案:B解析:在赋值语句xln(“zero”);break;case1:System.out.println(“one”);case2:System.out.println(“two”);default:System.out.println(“default”);}}}A.oneB.one,defaultC.one,two,defaultD.default正确答案:C解析:该题考查对switch-case-break的理解。每个分支语句后面必须有break语句,否则程序向下执行,直到遇到break语句或程序结束。所以,该题i=1时执行casel分支语句,而casel分支语句后没有break语句,程序继续向下执行case2分支语句和default分支语句。A只执行了case1:B只执行了casel和default;C:只执行了default。故本题的正确答案是C。23.下面程序的输出结果是()。publicclassSun{publicstaticvoidmain(Stringargs[]){intx=0;for(inti=1;i<=4;i++){x=4;for(intj=1;j<=3;j++){x=3;for(intk=1;k<=2;k++){x=x+6;}}}System.out.println(x);}}A.7B.15C.157D.538正确答案:B解析:本题考查对for循环嵌套的理解。此题中应用3重for嵌套循环,要注意每次执行完变量k的最内层循环后,得到的x值为15,无论x赋值为3或4,执行到最内层循环都被新值覆盖。因而i分别等于1,2,3执行结束时,x的返回值是15:i分别等于1,2,3,4执行结束时,x返回值依然是15。故本题答案是B。24.下列关于异常的描述中错误的是()。A.每个try代码段都必须有月.只有一个catch代码段与之对应B.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行C.一个catch代码段也可以区分多个不同类型的异常D.由于构造函数没有返回值,因此其中出现的错误用异常处理较为恰当正确答案:A解析:选项A中,与一个try代码段对应的代码段不一定只有一个,可以有很多个。其他选项的描述都是正确的。25.有关线程的哪些叙述是对的?()Ⅰ:一旦一个线程被创建,它就立即开始运行Ⅱ:使用start()方法可以使一个线程成为可运行的,但是它不一定立即开始运行Ⅲ:当一个线程因为抢先机制而停止运行时,它被放在可运行队列的前面Ⅳ:一个线程可能因为不同的原因停止(cease)并进入就绪状态A.Ⅱ、ⅢB.Ⅱ、ⅣC.Ⅰ、ⅡD.Ⅲ、Ⅳ正确答案:B解析:本题是考查对线程概念的掌握。一个新创建的线程并不是自动的开始运行的,必须调用它的start()方法使之将线程放入可运行态(runnablestate),这只是意味着该线程可被JVM的线程调度程序调度而不是意味着它可以立即运行。线程的调度是抢先式的,而不是分时间片式的。具有比当前运行线程高优先级的线程可以使当前线程停止运行而进入就绪状态。不同优先级的线程间是抢先式的,而同级线程间是轮换式的。一个线程停止运行可以是因为不同原因,可能是因为更高优先级线程的抢占,也可能是因为调用sleep()方法。而即使是因为抢先而停止也不一定就进入可运行队列的前面,因为同级线程是轮换式的,它的运行可能就是因为轮换,而它因抢占而停止后只能在轮换队列中排队而不能排在前面。26.Object中定义的线程同步与交换的方法有几种?()A.1种B.2种C.3种D.4种正确答案:C解析:Object中定义了Runnable接口,它定义的线程同步与交换的方法有:wait()、notify()以及notifyAll(),即3种。27.把一个对象写到一个流中相对比较简单,具体是通过调用ObjectOutputStream类的writeObject()方法实现的,那么该方法的定义为()。A.publicfinalintwriteObject(Objectobj)throwsIOExceptionB.publicfinalvoidwriteObject(Objectobj)throwsIOExceptionC.publicObjectwriteObject(Objectobj)throwsIOExceptionD.publicfinalObjectwriteObject(Objectobj)throwsIOException正确答案:B解析:writeObject()方法的正确定义为:publicfinalvoidwriteObject(ObjectObj)throwsIOException。即B选项的定义是正确的。28.Java语言中最基本的输入输出流类是()。Ⅰ:InputStreamⅡ:OutputStreamⅢ:WriterⅣ:ReaderⅤ:BufferReaderⅤ:BufferWriterA.Ⅰ、Ⅱ、Ⅲ、ⅣB.Ⅰ、Ⅱ、Ⅴ、ⅥC.Ⅲ、Ⅳ、Ⅴ、ⅥD.Ⅰ、Ⅱ、Ⅲ、Ⅳ、Ⅴ、Ⅵ正确答案:A解析:本题主要考查Java语言的I/O流的层次结构这个知识点。选项A正确,在Java中的流分为两种,一种是字节流,另一种是字符流,它们分别由4个抽象类来表示(每种流包括输入和输出两种,所以一共4个):InputStream、O呻utStream、Reader、Writer。Java中其他多样变化的流均是由它们派生出来的。选项B、C、D错误,BufferReader是从Reader类派生过来的,BufferWriter是从Writer类派生过来的。故本题答案是A。29.下列WindowListener接口方法中当窗口被激活时调用的方法是()。A.windowActivated(WindowEvent)B.windowClosed(WindowEvent)C.windowOpened(WindowEvent)D.windowDeactivated(WindowEvent)正确答案:A解析:本题考查关于窗口监听器接口中基本方法的知识。选项A正确,windowActivated(WindowEvent)方法在窗口激活时被调用到:选项B错误,windowClosed(WindowEvent)方法在窗口已经被关闭时调用:选项C错误,windowOpened(WindowEvem)方法在窗口已经打开时被调用到;选项D错误,windowDeactivated(WindowEvent)方法与窗口不再激活时被调用到。故本题答案是A。30.下列各项中不属于AWT提供的用于图形用户界面设计功能的是()。A.用户界面构件B.事件处理模犁C.图形图像工具D.文件I/O正确答案:D解析:AWT提供的功能主要有:用户界面构件、事件处理机制、图形图像工具和数据传送,但是没有提供文件I/O功能。31.每个使用Swing构件的程序必须有一个()。A.按钮B.标签C.菜单D.容器正确答案:A解析:每个使用Swing构件的程序必须有一个按钮,按钮是一个常用构件。32.下面哪个选项正确示例了传递一个参数给applet?()A.<appletcode=Test.classage=33width=100heigh=100>B.<paramname=agevalue=33>C.<appletcode=Test.classname-agevalue=33width=100height=100>D.<appletTest33>正确答案:B解析:该题考查对<APPLET>标记中的属性PARAM的理解。属性PARAM是用来传递参数给applet的,它又有两个属性name和value,前者表示参数的名字,后者表示参数的值。选项A和C显然不对,而选项D忽略了关键字param选项B的表示是正确的。故本题答案是B。33.在下面的程序段中,有关paint()方法中正确的说法是()。publicvoidpaint(Graphicsg){g.drawString(“Anyquestion”,10,0);}A.字符串Anyquestion输出在左上角位置,坐标为(10,0)B.只能看到一部分的字符C.能全都看到D.以上都不对正确答案:B解析:drawstring(Stringstr,intx,inty)方法是使用当前的颜色和字符,将str的内容显示出来,并且最左端的字符的基线从(x,y)开始。在本题中,y=O,所以基线位于最顶端。我们只能看到下行字母的一部分,即字母y、q的下半部分。34.下列说法中错误的是()。A.ODBCAPI使用C语言进行定义B.Java使用JDBC作为数据库坊问机制C.JDBC定义了一组标准的APID.JDBC是面向对象的高级别的对象集正确答案:D解析:虽然JDBC是面向对象的封装,但是它不是一种高级别的对象集。35.下列安全控制命令中,用于帮助用户管理密钥表工具的是()。A.keytoolB.kinitC.kiistD.ktab正确答案:D解析:Java语言的安全控制命令包括:keytool、jarsigner、policytool、kinit、klist、ktab。其中,ktab用于帮助用户管理密钥表工具,相当于Solaris操作系统中的工具ktab。填空题(每空2分,共30分)请将每一个空的正确答案写在答题卡上。注意:以命令关键字填空的必须拼写完整。36.多线程是Java语言的【】机制,它能够处理同步共享数据和各种不同的事件。正确答案:并发解析:Java语言的开发运行环境都是互联网,在这种分布式的环境中,并发和共享是很常见的事务,要能并行地处理很多的事务,就要求Java语言提供一种可靠和高效的机制来满足高并发事务处理的要求。多线程很好地解决了网络上的瓶颈问题,很好地解决了大数量地网络访问问题。37.在J2SEv1.4运行环境中,编译Java源程序的命令是【】。正确答案:javac解析:在bin目录中包含的可执行文件javac.exe是Java编译器,用javac命令将写好的Java源程序编译成字节码。38.在Java程序中,通过类的定义只能实现单一继承,但通过接口的定义可以实现【】关系。正确答案:多重继承解析:Java语言不支持多重继承,只支持单一继承。需要使用其他类中的方法,但又无法直接继承时,可以使用Java提供的接口技术。即通过接口来实现多重继承。一个类可以实现多个接口。39.表达式11010011>>>3的值为【】。(二进制数表示)正确答案:00011010解析:逻辑右移的基本原则是低位舍弃,高位补0,11010011的最

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论