《备考2023年内蒙古自治区包头市全国计算机等级考试Java语言程序设计真题(含答案).docx》由会员分享,可在线阅读,更多相关《备考2023年内蒙古自治区包头市全国计算机等级考试Java语言程序设计真题(含答案).docx(19页珍藏版)》请在课桌文档上搜索。
1、备考2023年内蒙古自治区包头市全国计算机等级考试Java语言程序设计真题(含答案)学校:班级:姓名:考号:一、单选题(10题)1 .下面关于JaVa命名规则的约定,错误的是()A.变量名、方法名首字母小写,其余单词只有首字母大写B.常量完全小写C._、$不作为变量名、方法名开头D.接口名、类名首单词第一个字母大写2 .下列操作中,不属于APPIet安全限制的是()。A.加载本地库B.读写本地文件系统C运行本地可执行程序D.与同一个页面中的Applet通信3 .下面叙述正确的是oA.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数C.算法的有穷性是指算法
2、必须能在执行有限个步骤之后终止D.以上三种描述都不对4 .下列事件监听器中,无法对TextField对象进行事件监听和处理的是()oAAction1.istenerB-Focus1.istenerC-MouseMotion1.istenerD-Change1.istener5 .在Java中,用package语句说明一个包时,该包的层次结构必须是()oA.与文件的结构相同B.与文件目录的层次相同C.与文件类型相同D.与文件大小相同6 .Java中的抽象类Reader和Writer所处理的流是()。A.图像流B.对象流C.字节流D.字符流7 .编译Javaapplet源程序文件产生的字节码文件的
3、扩展名为()AjavaB.classC.htmlD.exe8 .下面对do-while结构的描述中,不正确的是()A.循环体至少执行一次B.属于“直到型”循环C.与While语句执行情况相同D.先执行循环体,再计算终止条件,若结果为true,则执行循环体,直到布尔的值为false9 .下列哪个赋值语句是正确的?A.chara=12;B.inta=12.0;C.inta=12.0f;D.inta=(int)12.0;10 .下列程序的运行结果是()。publicclasstestprivateStringdata=1011,n10.5,publicvoidfun()(doubleS=0;for(
4、inti=0;i3;i+)try(s=s+Integer.parselnt(datai);catch(Exceptione)System.out.print(t4errorl:,datai)o)publicstaticvoidmain(stringargs)try(testd=newtest();d.fun();catch(Exceptione)System,out.println(error2,)A.errorl:10.5B.error2C.errorl:10.5error2D,以上都不对二、2.填空题(10题)11 .多线程是JaVa语言的机制,只能够处理同步共享数据和各种不同的事件。12
5、 .当用户在TeXtFiekl中输入一行文字后,按回车键,实现【】接口可实现对事件的响应。13 .过滤字节输出流都是【】抽象类的子类。14 .Java语言的各种数据类之间提供两种转换:和强制转换。15 .Java定义的对象流是ObjeCtInPUtStrCam和【016 .类TeSt定义如下:publicclassTestpublicstaticvoidmain(Stringargs)(Stringsty=newString(abcde11);charch=A,1,B,C,t,D,tE,;ml(str,ch);System.out.print(str+11,”);System.out.prin
6、tln(ch);)publicstaticvoidml(Strings,charch)(s=Hello11;ch3=,Z,;那么程序的执行结果为:17 .算法的基本特征是可行性、确定性、【】和拥有足够的情报。18 .数据独立性分为逻辑独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,所以,基于逻辑结构的应用程序不必修改,称为O19 .Java中流的实现是在【】的类层次结构内部定义的。20 .Frame默认的布局管理器是。三、1.选择题(10题)21 .关于J2SDK的基本命令,下列叙述正确的是一Ajavac是Java语言的解释器,解释运行Java字节码22 javadoc是Jav
7、aAPl文档生成器Cjava是Java语言的编译器DJaVah是JaVa类文件解析器,用于解析类文件23 .下列说法中,错误的一项是oA.Applet和Application一样,入口方法都是main()B.Applet和Application不一样,入口方法不是main(),其运行要复杂得多C.Appier必须嵌入Web浏览器或者AppleWiewer中运行DApplet可以为Web页面提供动画,声音等效果24 .下列不是事件处理机制角色的是()。A.事件B.事件源C.事件接口D.事件处理者25 .软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及oA.阶段
8、性报告B.需求评审C.总结D渚B不正确26 .软件生命周期中花费时间最多的阶段是()A.详细设计B.软件编码C.软件测试D.软件维护27 .为了支持压栈线程与弹栈线程之间的交互与同步,在下画线处依次填入的语句是publicclassIntStackprivateintidx=0;privateintdata=newint8;publicvoidpush(inti)dataidx=i;idx+;.A.synchronized()notify()B.synchronized()this.wait()C.synchronized()this.notify()D.synchronized()sleep
9、()28 .用来实现Java虚拟机的语言是()。A.JavaB.CC.C+D.汇编29 .软件需求分析阶段的工作,可以分为4个方面:需求获取、需求分析、编写需求分析说明书和()。A.阶段性报告B.需求评审C.总结D.都不正确30 .Thread类的方法中,toString()方法的作用是()。A.只返回线程的名称B.返回当前线程所属的线程组的名称C.返回当前线程对象D.返回线程的字符串信息31 .以下构件中处于JaVa虚拟机下方的是()。A.JavaOSBJava基本APIC.Java基本类DJava应用程序和Applet四、综合应用题(2题)32 .注意:下面出现的“考生文件夹”均为USER
10、%在考生文件夹中存有文件名为Java_3.java的文件,该程序是不完整的,请在注释行“*FOUnd*下一行语句的下划线地方填入正确内容,然后删除下划线,请勿删除注释行或改动其他已有语句内容。存盘时文件必须存放在考生文件夹下,不得改变原有文件的文件名。本题的要求是:在标题为“ButtonTest”的窗口中显示一个按钮,当点击该按钮时将弹出另一个标题为“AnOther”窗口(如图所示)。运行结果为(两个窗口均不具有关闭功能,使用CM+C结束程序运行):ButtonTest-lll给定源程序:importjava.awt.*;importjava.awt.event.*;*Found*public
11、classJava_3Action1.istenerpublicstaticvoidmain(Stringargs)Java_3tb=newJava_3();Frame,f=newFrame(11ButtonTest);f.setSize(200,l00);f.set1.ayout(newFlow1.ayout(Flow1.ayout.CENTER);Buttonb=newButton(,PresstheButton!);*Found*b(tb);f.add(b);f.setVisible(true);)publicvoidactionPerformed(ActionEvente)Frame,
12、fr=newFrame(AnOther1);fr.setBackground(Color.green);fr.add(new1.abel(Thisframe.showswhen+pressingthebuttoninButtonTest);fr.pack();fr.setVisible(true);33 .本题的功能是监听鼠标的操作。鼠标置于窗口中单击时(左键或右键),在单击的地方会画一个小矩形,如果将鼠标置于小矩形上,则鼠标光标状态改为小十字,按下鼠标左键可拖曳,双击鼠标左键(或右键)时,小矩形消失。importjava.awt.*;importjava.awt.event.*;import
13、java.util.*;importjava.awt.geom.*;importjavax.swing.*;publicclassjava3(publicstaticvoidmain(Stringargs)(MouseFrame.frame=newMouseFrame:frame.setDefaultCloseOperation(JFrame.EXIToN.C1.OSE);frame.show;)classMouseFrame.extendsJFrame(publicMouseFrame(setTitle(,java311);setSize(DEFAU1.TWIDTH,DEFAU1.THEIG
14、HT):MousePanelpanel=newMousePanel;ContainercontentPane=getContentPane;ContentPane.add(panel);)publicstaticfinalintDEFAU1.T_WIDTH=300;publicstaticfinalintDEFAU1.TJHEIGHT=200;classMousePanelextendsJPanel(publicMousePanel(squares=newArray1.ist;current=null:addMouse1.istener(newMouseHandler);addMouseMot
15、ion1.istener(newMouseMotionHan-dler);)publicvoidpaintComponent(Graphicsg)(super.paintComponent(g);Graphics2Dg2=(Graphics2D)g;fbr(inti=0;isquares.size;i+)g2.draw(Rectangle2D)squares.get(i);)PUbliCVOidfind(Point2DP)(fbr(inti=0;i=2)remove(current);)privateclassMouseMotionHandlerimplementsMouse-Motion1.
16、istener(publicvoidmouseMoved(MouseEventevent)(if(fd(event.getPoint)=null)setCursor(Cursor.getDefaultCursor);elsesetCursor(Cursor.getPredefinedCursor(Cursor.CROSSHAIR.CURSOR);)publicvoidmouseDragged(MouseEventevent)(if(current!=null)(intx=event.getX:intY=event.getY;、current.setFrame(x-SIDE1.ENGTH/2,Y
17、-Sidelength/2.SIDE1.ENGTH,SIDE1.ENGTH);repaint;五、单选题(0题)34 .构造方法名必须与()相同,它没有返回值,用户不能直接调用它,只能通过new调用。A.类名B.对象名C.包名D.变量名六、单选题(0题)publicc!jisEXJimpIeStringliufferCpublicMaticvoidmain(Siringarg5SinnRBuffer*bnewSringBuffcr(*lesSystem,out.prinlnlength-,sb.length35 .请阅读下面程序c),H程序运行结果中在“Iength=后输出的值是()oA.10
18、B.4C.20D.30参考答案1.B2.DDo【解析】本题考查APPIet的安全限制。为了保护本地主机,很多浏览器对Applet作了安全限制:Applet不能运行任何本地可运行程序;禁止加载本地库或方法;禁止读、写本地计算机的文件系统;禁止与提供Applet之外的任何主机建立网络连接;不能读取某些系统信息。但APPIet是可以与同一个页面中的APPlet进行通信的,所以选项D不属于Applet安全限制。3 .C解析:算法的执行效率与数据的逻辑结构和存储结构都有很紧密的关系。算法的空间复杂度是指执行该算法需要的内存空间,并非算法程序中指令的条数。算法一般应该具有以下4个特征:可行性、确定性、有穷
19、性和拥有足够情报。其中,有穷性是指算法必须能在执行有限个步骤之后终止,否则可能失去实际意义。4 .DD。【解析】本题考查AWT事件处理。事件就是发生在用户界面上的用户交互行为所产生的一种效果。每类事件都有对应的事件监听器,监听器就是接口。在单行文本输入区(TeXtFiekI)构件上可能发生的事件包括:FOCUSEVent焦点事件焦点的获得和丢失,这类事件所对应的事件监听器是Focus1.istener;ActionEvent动作事件按钮按下、TextField中按Enter键,这类事件所对应的事件监听器是Action1.istener;MouseEvent鼠标事件鼠标单击、释放、拖动、移动,这
20、类事件所对应的事件监听器是MousetMotion1.istener0虽然还包括其他一些监听器,但是在所有事件及其所对应的事件监听器中,并不包括Change1.iStener这样一个事件监听器。因此,本题的正确答案是D。5.B本题考查JaVa包的概念。JaVa采用包来管理类名空间,为编程提供一种命名机制,也是一种可见性限制机制。定义一个包要用Paekage关键字,用PaCkage语句说明一个包时,该包的层次结构必须与文件目录的层次相同。否则,在编译时可能出现查找不到的问题,所以选项B正确。6 .D解析:Java的I/O功能主要是通过输入输出类库java.io包实现的,java.io包中包括了可
21、以处理字节流、字符流、文件流和对象流等的类。Java.io包中的抽象类有字节流的抽象类InPUtStream和OUtPUtStream;过滤流的抽象类FilterOutputStream和FiherInputStream;字符流的抽象类Reader和Writer;压缩抽象类InfIaterlnPUtStream和DeflaterOutputStreamo7 .B解析:该题考查对Applet运行中所需要的几种文件的理解。Applet源程序与任何JaVa源程序一样,其文件扩展名都为java,编译之后生成的目标文件的扩展名为CIaSS,但要执行该小程序,必须有相应的html文件;而.exe文件根本就
22、与JavaApplet不沾边。8 .C9 .D解析:主要要熟悉数据类型的赋值和两种类型转换方法(即自动转换和强制转换)的使用方法。字符变量以Char类型表示,它在内存中占16位,它不能当做整数使用。选项B)中的12.0为double类型,赋给a时需要强制转换。选项C)中的IZOf为float类型,赋给a时也需要强制转换。选项D)用到了强制类型转换将double类型赋给整形a,所以正确。10.Ctry-catch块是可以嵌套分层的,并且通过异常对象的数据类型来进行匹配,以找到正确的CatChblOCk异常错误处理代码。以下是通过异常对象的数据类型来进行匹配找到正确的catchblock的过程。r
23、n首先在抛出异常的trycatch块中查找catchblock,按顺序先与第一个CatChblOCk块匹配,如果抛出的异常对象的数据类型与catchblock传入的异常对象的临时变量(就是catch语句后面参数)的数据类型完全相同,或是它的子类型对象,则匹配成功,进入到CatChbIoCk中执行,否则到第2步:rn如果有两个或更多的CatChbIOck,则继续查找匹配第二个、第三个,直至最后一个CatChblock,如匹配成功,则进入到对应的catchblock中执行,否则到第3步;rn返回到上一级的trycatch块中,按规则继续查找对应的Catehblock。如果找到,进入到对应的CatC
24、hblOCk中执行,否则到第4步;rn再到上上级的trycatch块中,如此不断递归,直到匹配到顶级的trycatch块中的最后一个catchblock,如果找到,进入到对应的catchblock中执行;否则程序将会执行terminate(u3OOOu3OOO)退出。所以本题选C。U.并发并发解析:本题考查JaVa语言的特点。JaVa语言的开发运行环境都是互联网,在这种分布式的环境中,并发和共享是很常见的事务,要能并行地处理很多事务,就要求Java语言提供一种可靠和高效的机制,来满足高并发事务处理的需求。多线程很好地解决了网络上的瓶颈问题及大量的网络访问问题。12 .Action1.isten
25、erAction1.istener解析:ACtionEVent类中激活构件的接口为Action1.istenero13 .FilteroutputstreamFilterOutputStream解析:主要熟悉java,io包中的几个输入/输出流。14 .自动自动15.ObjectOutputStreamObjectOutputStream解析JaVa语言定义了两个字节流,即ObjeCUnPUtStream和ObjectOutputStream,用于对象的读写操作,一般称作对象流。16 .abcdeABCZEabcde,ABCZE解析:main。方法中的变量Str中存放的是String对象,ab
26、cde,的内存空间弓I用,所以引用类型在进行参数传递时,是将引用拷贝给形式参数soml()方法中的S=HeIky会使S弓I用一个新的字符串,但是main。方法中的Str还是引用着Strirlg对象匕bcde;所以打印结果应为abcde,ABCZEo17 .有穷性有穷性解析:算法是指解题方案的准确而完整的描述。它有4个基本特征,分别是可行性、确定性、有穷性和拥有足够的情报。18 .物理独立性物理独立性解析:逻辑独立性是指,由于数据的局部逻辑结构与总体逻辑结构之间也由系统提供映像,使得当总体逻辑结构改变时,其局部逻辑结构可以不变,从而根据局部逻辑结构编写的应用程序也可以不必修改。物理独立性是指,由
27、于数据的存储结构与逻辑结构之间由系统提供映像,使得当数据的存储结构改变时,其逻辑结构可以不变,所以,基于逻辑结构的应用程序不必修改。19 .java.iO包java.i包20.Border1.ayoutBorder1.ayout解析:Flow1.ayout是Pane和Applet默认的布局管理器,构件在容器中从上到下、从左到右进行放置;Border1.ayout是WindowsFrame和Dialog的默认布局管理器,在Border1.ayout布局管理器中构件分成5个区域,每个区域只能放置一个构件;Grid1.ayoUt使容器中各个构件呈网状布局,平均占据容器的空间;Gard1.ayout把
28、容器分成许多层,每层只能放置一个构件。21.B解析:J2SDK的基本命令包括javac、java、javadoc、appletviewerxjar、jdb、javahsjavapxextchecho其中,javac是JaVa语言的编译器;javadoc是JavaAPl文档生成器;java是Java语言的解释器;javail是生成C头文件和Stub文件avap是Java类文件解析器,用于解析类文件。所以选项B正确。22 .A解析:APPIet和APPliCation不一样,入口方法不是main和由于它运行于Web浏览器或者Appletviewer中,因此其运行要复杂的多。23 .C解析:事件处理
29、机制的角色包括事件、事件源和事件处理者。24 .B解析:需求分析阶段的工作,可以概括为以下4个方面:需求获取、需求分析、编写需求规格说明书和需求评审。本题的正确答案为Bo25 .D解析:软件生命周期分为软件定义、软件开发及软件运行维护3个所段。本题中,详细设计、软什编码和软件测试都属于软件开发阶段;维护是软件生命周期的最后一个阶段,也是持续时间最长,花费代价最大的一个阶段,软件工程学的一个目的就是提高软件的可维护性.降低维护的代价。26 .C解析:一个程序中单独的、并发的线程对同一个对象进行访问的代码段,称为临界区。在JaVa语言中,临界区可以是一个语句块或是一个方法,并且用synchroni
30、zed关键字标识。本程序中PUSh()方法即为临界区,所以需要用synchronized关键字标识。this.notify()把当前堆栈对象的waitpool中的一个线程释放到IOCkpool,等待该堆栈的锁以便运行。27.BB。【解析】本题考查Java语言的虚拟机。Java本身的编译器用Java语言编写,运行系统的虚拟机用C语言实现。JaVa语言的执行模式是半编译和半解释型,程序首先由编译器转换为标准字节代码,然后由JaVa虚拟机去解释执行,字节代码实际上可以看作是虚拟机的机器代码。考生应当理解Java语言的实现机制,这属于考试重点。正确答案为选项B01 8.B解析:本题考查软件需求分析的四
31、个阶段,分别为需求获取、需求分析、编写需求分析说明书和需求评审。29 .D解析:Thread类的toString()方法返回线程的字符串信息,包括线程的名字、优先级和线程组。30 .A解析:本题考查对JaVa虚拟机的理解。选项A正确,JaVa虚拟机处于核心位置,它的下方是移植接口,移植接口由依赖平台和不依赖平台的两部分组成,依赖平台的部分称为适配器,不依赖平台的部分为JaVaOS选项B、C、D错误。在JaVa虚拟机上方,是JaVa的类和JavaAPIo在JaVaAPlJz1可以编写Java应用程序和JavaAppleto31.implementsiaddAction1.istener第1处:实
32、现的接口,需填入implements第2处:为按钮注册监听器,需填入addAction1.istener32.第1处:publicRectangle2Dfind(Point2Dp)n第2处:privateclassMouseHandlerextendsMouseAdaoptern第3处:find(event.getPoint)=nulln【解析】第1处定义一个返回类型为ReCtangle2D的find函数且有一个Point2D型的形参;第2处定义了继承鼠标适配器MouseAdapt的MouseHandler;第3处判断find函数的返回值是否为空。33.A解析:构造方法是类中的一种特殊方法,是为对象初始化操作编写的方法,用它来定义对象的初始状态。构造方法名必须与类名相同,它没有返回值,用户不能直接调用它,只能通过new自动调用。34.Bn本题对StringBUffer(StringStr)构造方法,用Str给出字符串的初始值,并分配16个字符的缓存。因此,字符串Sb的初始值是“test”,并且包含16个字符的缓存。length(u3000u3000)方法用来获得字符串长度,不包含缓存。故程序运行结果中在“length-后输出的值应该是字符串Sb的长度,即4。n