【备考2023年】江苏省徐州市全国计算机等级考试Java语言程序设计测试卷一(含答案).docx
【备考2023年】江苏省徐州市全国计算机等级考试Java语言程序设计测试卷一(含答案)学校:班级:姓名:考号:一、单选题(10题)1 .关于内存变量的调用,下列说法中正确的是()oA.私有变量只能被本层模块程序调用B.私有变量能被本层模块和下层模块程序调用C.局部变量不能被本层模块程序调用D.局部变量能被本层模块和下层模块程序调用2 .下列语句片段的结果为()Intresult;Inta=17.b=6;result=(a%b>4)7a%b:ab;System7out.println(result);A.0B.1C.2D.53 .将ER图转换为关系模式时,实体和联系都可以表示为()oA.属性B.键C.关系D.域4 .main方法是JavaApplication程序执行的入口点,关于main方法的方法头以下哪项是合法的?()A.publicstaticvoidmain()B.publicstaticvoidmain(Stringargs)C.publicstaticintmain(Stringarg)D.publicvoidmain(Stringarg)5 .下面描述中不属于简单数据类型的是()A.类B.布尔类型C.整数类型D.浮点数类型6 .要向APPlet传递参数,应该在下列drawing.htnll文件的下画线处填入的选项是()。<apleicode-DrawImaRc.claxwtdh100height100><a>k>A. (paramimage,flower.gif,)B. (paramimagevalue=flower,gifC. (paramname=imagevalue=,flower.gif'D. (paramname,image,value=,flower.gif'7 .在Applet的init()方法被调用后,接下来最先被调用的方法是A.run()B.start()C.stop()D.destroy()8 .按照JaVa的标识符命名规则,下列表示常量的标识符规范的是A.HelloWorldB.HE1.1.O_WOR1.DC.hello_worldD.helloWorld9Java语言中,负责并发管理的机制是()oA.垃圾回收B.虚拟机C.代码安全D.多线程10 .下列不属于Java关键字的是()A.thisB.superC.finallyD.NU1.1.二、2.填空题(10题)11 .在面向对象方法中,类之间共享属性和操作的机制称为【】。12 .长度为n的顺序存储线性表中,当在任何位置上插入一个元素概率都相等时,插入一个元素所需移动元素的平均个数为【】。13 .设有数组定义:inta=ll,22,33,44,55,66,77,88,99);则执行下列几个语句后的输出结果是【】。for(inti=0;i<alength;i+)if(ai%3=0)System.out.print(ai+11',);14 .是当前软件开发环境中富有特色的研究工作和发展方向。15 .每个Java应用程序可以包括许多方法,但必须有且只有一个【】方法。16 .关系中的属性或属性组合,其值能够唯一地标识一个元组,该属性或属性组合可选做为【】。17 .在深度为5的完全二叉树中,度为2的结点数最多为o18 .关系代数运算是以集合运算为基础的运算,它的基本操作是【】、并、差。19 .Jackson结构化程序设计方法是英国的M.Jackson提出的,它是一种面向【】的设计方法。20 .else子句不能单独作为语句使用,它必须和if子句配对使用。else子句与if子句的配对原则是:else子句总是与离它【】的if子句配对使用。三、1.选择题(10题)21 .输入输出在计算机系统中起到了采集数据和提供数据处理结果的双重作用,它是以中央处理器(含控制器和内存)为此,以网络及外部设备为彼的双向数据传输机制。凡是从外部设备流向中央处理器的数据流,称为什么;反之称为什么?A.出流,入流B.输出流,输入流C.输入流,输出流D.入流,出流22 .下列关于内部类的说法不正确的是()oA.内部类的类名只能在定义它的类或程序段中或在表达式内部匿名使B.内部类可以使用它所在类的静态成员变量和实例成员变量C.内部类不可以用abstract修饰符定义为抽象类D.内部类可作为其他类的成员,而且可访问它所在类的成员23 .单击窗口内的按钮时,产生的事件是()oA.MouseEventB.WindowEventC.ActionEventD.KeyEvent24 .下面哪个语句会产生编译错误?()A.floatF=4090F;25 doubleD=4090;C.byteB=4096;D.charC=4096;26 .只能用在循环语句中的是()。A.ifB.if-elseC.For语句Dxontinue语句27 .阅读下面程序publicclassOperatorsAndExpressionsVoidequalsMethodlOStrings1=newString(,howareyou11);Strings2=newString(,'howareyou11);System.out.println(s1=s2);publicstaticvoidmain(Stringargs)OperatorsAndExpressionsOperAndExp=newOperatorsAndExpressions();用于复合类型数据的运算符OperAndExp.equalsMethodl();程序运行结果是()。A.=B.trueC.falseD.equal28 .一个JaVaAPPliCation运行后,在系统中是作为一个()A.线程B.进程C.进程或线程D.不可预知29 .下列说法中错误的是()。A.CDC是Configuration的一部分,主要支持嵌入式设备开发B.C1.DC是Configuration的一部分,主要支持嵌入式设备开发CCDC是针对32bit的CPU,内存为2MBD.CD1.C针对16bit或32bit的CPU,内存为128KB或256KB30 .Java语言有自动收集垃圾的功能,会周期性地回收一些长期不用的对象占用的内存。下列选项中为对象清除路径的是()oI.依靠Java的垃圾回收机制回收内存11.调用SyStem.gc(),请求垃圾回收IIIJava系统开始运行时,自动调用java.ObjeCt.finalize。释放内存IV.在程序中调用重写的finalize。方法释放系统资源,其格式为:protectedvoidfinalize()throwsthrowable.super,finalize();A.I,IIIB.I,11.I11,IC.I.11,I11D.11,II1.IV30 .Panel和Applet的默认布局管理器是A.Card1.ayoutB.Flow1.ayoutC.Border1.ayoutD.Grid1.ayout四、综合应用题(2题)31 .本题的功能是对图形进行操作,包括旋转、移位、放大和剪切。窗口中有4个单选按钮和一个图形面板,图形面板中有一个矩形和该矩形移位操作后的图形,任选其中一个单选按钮,则图形面板中将显示该操作后的图importjava.wt.importjavaawt.event.m>orijava.awt.gcom.ImpOrljava.util.mx>rtjavn.swing.:publicclasjva3(publicvoidmai11(Stringrgs)(JFrnmCfrnnunewTransformTcstFrnmcOjframe,sctDe(nultCloc<)j>cration(JFramc.EXIT_(),CI)SE)tframe,show()l)d、TranUorrnTECXICndsJFnImCpublicTransformTcsFramc()(5<<Titlc(,'java3")»5cSc(WIDTH.HElGHT)JContainerCOntcntPancgetContcntPane<)CanVaKnewTrans(ormPanel<>:contf11(Pane,11dd(cnnvas.Bordcrluiyout.CENTER):JPanelbUUOnPanelnewJPaneiOiBuuonGroupgroup=;newHUttonGrOUP)】JRadioBultonrotacBtonnewJRadioButionC*tH',.true):butIonPanel.add<rotatcButton)group,add(rotaleButtnn)rota<eUutto11.ftddAciton1.unvr(newActionl.iMcner()IpublicvoidactionPerformed(ActionEvcntevent)tcanvas.sctRotatc<)>>JRaciioButtontrnnhlrButton-newJRadioBuiton<,*(f-.fal5e)tbuitonPanc1.add(IranslateButton)group,add(fr115tcKuUon)1translaic*Button.addcionI.stcner(newActon1.istcncr()publicvoidactonf*erformcd(ActionEvenievent)(canvas.5vlTran5Iatc()>>JRadioButtonncaleButton-newJRadioBut<on<"jJftz"fake)buttonPnnd.add(s<aleButton);group.ndd<sc8cButton)5CeBuon.Addctionl.istcner(newction1.stcner<)(publicvoidactonPcrforme<l<ActionEvcntevent)(CanVa$.5ciScalc()1)JRadiuBuHonhcar½uuonnewJRadioBuiton"剪切"false);buttonpanel,ad<l(shcarBulion)«group,“dd(ShearBUIton);shcarButton.addctionl.iMener(newAcuon1.iMenerO(publicvoidac!onl,crformcd(AciionEvcntevent)(canvas.ctShcar():):contentPane.Add(buttonPancl(Border1.ayout.NORTH)1)privateTrans(omPanclcanvasprivatestaticGnalintWIDTH三s30OtprivatestaticGnaIinlHEKlHT=300:>da、TranHormPaneIexendJPanCltnewAffincTransforTnOi5etR0t<ic()I)PUMiCVOidpniniComponcnM)<publicTransformPancK)square-newRcclangIeZI).l)ubk(-50,-50.100.100)tj<upcr.PaintCOmpOnCnMg)JGraphics2Dr2(Graphcs2D)gg2.tr*njlate<gelWidihO/2getHcightO/2)r2.5cPain!(Color.gr«y)r2.draw(square)g2.transform”);g2.5dPfint(Color.black)g2.draw(square)publicvoid5e(R0iaie()(.5ctToRotion(Math.IORadianU30)trepint()publicvoidsc<Tran5lae()(t.setToTranslaton(20.15)repaint(>3>publicvoidetScale()(t.setToScalc<2.O.I.S)reaint()t)publicvoidsetShear()(I.setToShcar(0.20)»repatn()privateRectangle2Dsquare1privateAfGncTransformu)32.本题中,主窗口中有两个下拉菜单,一个控制绘制图形的颜色,另一个控制绘制的图形,在画板中单击鼠标,则以单击的位置为左上角、以选定的颜色绘制选定的图形。importjava.awt.*;importjava.awt.event.*;classjava3extendsFrame.StringIJfigUreNameS=“圆形",“椭圆形",”正方形“,“长方形”);StringUCOIOrNameS=“红色”,“绿色“,"蓝色“,”黄色”;ColorcolorValues=Color.red,Color.green,Color.blue,Color.yellow);ChoicechFigure=newChoice;ChoicechColor=newChoice;intcurX,curY;java3super(,java311);addWindow1.istener(newWindowAdapterJpublicvoidwindowClosing(WindowEvente)System.exit(O););PanelP=newPanel(newGrid1.ayout(1,O);for(inti=0;i<figureNames.length;i+)ehFigure.addhem(figureNamesi);)for(inti=0;i<colorNames.length;i+)chColor.addhem(eolorNamesi);)P.add(chColor);P.add(chFigure);add(p,Border1.ayout.NORTH);addMouse1.istener(this);setSize(300,300);show;)publicvoidupdate(Graphicsg)g.getColor(colorValueschColor,getSelectedIndexh;switch(chFigure.getSelectedlndex)case0;g.fillOval(curXjcurY,30,30);break;case 1 :g.fillOval(curX,curY,30,50);break;case 2 :g.fillRect(curX,curY,30130);break;case 3 :g.fillRect(curX,curY,30,50);break;ClaSSMOUSeEVent1.iStenerimplementsMouseAda-ElerpublicvoidmousePressed(MouseEventevt)curX=evt.getX;curY=evt.getY;repaint;)staticpublicvoidmain(Stringargs)newjava3;)五、单选题(0题)33 .Java中,通过网络使用UR1.访问对象的功能流是()。APipedInputStream输入流B.UR1.输入流C-BufferedlnputStream输入流D.Sock输入流六、单选题(0题)34 .下列选项中,不能输出100个整数的是A.for(inti=0;i<100;i+)System.out.println(i);B.inti=0;doSystem.out.println(i);i+;while(i<100);C.inti=0;while(i<100)System.out.println(i);i+;)D.inti=O;while(i<100)i+÷if(i<100)continue;System.out.println(i);参考答案1.B解析:在程序中直接使用(没有通过PUB1.IC和1.OCA1.命令事先声明)而由系统自动隐含建立的变量都是私有变量。私有变量的作用域是建立它的模块及其下属的各层模块。局部变量只能在建立它的模块中使用,不能在上层或下层模块中使用。当建立它的模块程序运行结束时,局部变量自动释放,局部变量用1.oCA1.命令建立。2 .D3 .C解析:数据库逻辑设计的主要工作是将E-R图转换成指定RDBMS中的关系模式。从ER图到关系模式的转换是比较直接的。实体与联系都可以表示成关系,ER图中属性也可以转换成关系的属性。实体集也可以转换成关系。4.B5 .A6 .DParam<name="",ValUe=中name属性值不可重复,value是绝对路径,必须用引号引用起来。7.B解析:APPlet生命周期包括APPIet的创建、运行与消亡几个状态。Applet类提供了在生命周期不同阶段响应主要事件的4种方法,这4种方法的调用次序如下图所示。由上图可知,在调用完init()方法后,接下来最先被调用的是Start()方法。因此,本题的正确答案是B。8.B解析:本题考查JaVa标识符的命名规则。属于考试重点内容,应该掌握。Java中标识符的命名规则是:标识符以字母、下划线、美元符作为首字符的字符串序列;标识符是区分大小写的;标识符的字符数没有限制。但是JaVa有一些命名约定,基本原则为:$不作为变量名、方法名开头:变量名、方法名首单词小写,其余单词只有首字母大写;接口名、类名首单词第一个字母大写;常量完全大写。按照这些约定,可见只有选项B正确。9 .D解析:选项A,Java语言中,垃圾回收机制对系统中不使用的内存进行回收,从而使程序员从繁忙的内存管理中解放出来。选项B,Java编写好的程序首先由编译器转换为标准字节代码,然后由虚拟机执行。虚拟机把字节代码程序与各操作系统和硬件分开,使JaVa程序独立于平台。选项C,Java的代码安全检测体现在多个层次上,在编译层、解释层、平台层分别作不同的安全检查。选项D,多线程是JaVa程序的并发机制,它能同步共享数、处理不同的事件。因此,本题的正确答案是D。10 .D11 .继承继承解析:类是面向对象语言中必备的程序语言结构,用来实现抽象数据类型。类与类之间的继承关系实现了类之间的共享属性和操作,一个类可以在另一个已定义的类的基础上定义,这样使该类型继承了其超类的属性和方法,当然,也可以定义自己的属性和方法。12 .n/2n/2解析:性表的任何位置插入一个元素的概率相等,即概率为p=l(n+l),则插入一个元素时所需移动元素的平均次数为13.336699336699解析此题是输出数组中能被3整除的元素。a.length可以求出数组a的元素个数。14 .计算机辅助软件工程(CASE)计算机辅助软件工程(CASE)解析:CASE将各种软件工具、开发机器和一个存放开发过程信息的中心数据库组合起来,形成软件工程环境。15 .mainmain解析:每个JaVa应用程序可以包括许多方法,但必须有且只有一个main方法格式统一为:PUbliCstaticvoidmain(Stringargs11)o16 .键键解析:键是关系模型中的一个重要概念,在二维表中能唯一地标识一个元组的属性,二维表中可能有若干个键。表中一定要有键,因为若表中所有的属性的子集均不是键,则表中属性的全集必为键。17.1515解析:在深度为5的完全二叉树中,度为2的结点数最多的是深度为5的满二叉树。在深度为5的满二叉树中,前4层中所有结点的度为2。即在深度为5的完全二叉树中,度为2的结点数最多相当于深度为4的满二叉树中的结点数。深度为4的满二叉树中的结点数为2的4次方-l=15o18 .交交解析:关系代数的运算是数据库设计基础的一个难点。除了定义数据库结构和约束外,一个数据模型还必须包括一组操作来操纵数据。由基本关系模型操作组成的集合构成了关系代数。19 .数据结构数据结构解析:结构化分析方法主要包括:面向数据流的结构化分析方法(StrUCtUredanaIysis,SA),面向数据结构的JaCkSOn方法(Jacksonsystemdevelopmentmethod,JSD)和面向数据结构的结构化数据系统开发方法(Datastructuredsystemdevelopmentmethod,DSSD)o20 .最近最近解析:else子句不能单独作为语句使用,它必须和if子句配对使用。else子句与if子句的配对原则是:else子句总是与离它最近的if子句配对使用。21 .C解析:我们需要搞清这些最基本的概念,比如说哪个方向是输出,哪个方向是输入。22 .C解析:内部类的特点:内部类的类名只能在定义它的类或程序段中或在表达式内部匿名使用。内部类可以使用它所在类的静态成员变量和实例成员变量。内部类可用abstract修饰定义为抽象类。内部类可作为其他类的成员,而且可访问它所在类的成员。除StatiC内部类外,不能在类内声明StatiC成员。23 .CC。【解析】在构件的事件类中,MOUSeEVent事件是鼠标事件,包括鼠标单击,移动;WindoWEVent事件是窗口事件,包括关闭窗口,窗口闭合。图标化;AetionEVent事件是动作事件,包括按钮按下;TextField中按Enter键;KeyEVent事件是键盘事件,包括键按下、释放。24 .C解析:该题考查对基本数据类型的定义以及基本数据类型的取值范围的掌握。选项A正确,Java语言默认的实型数的形式是double类型的,要把它赋给float类型的变量,必须在实型数后面加上f或F字母;选项B是正确的;选项C是错误的,4069已经超出了byte类型的所能容许的范围-128127:选项D是正确的,因为在JaVa语言里,字符是用双字节表示的,4096在它允许的范围之内。故本题答案是Co25 .D26 .C解析:本题考查的足JaVa语言中运算符的特殊用法。相等比较运算符,=,不仅可用于基本类型的数据之间的比较,还可以用于复合数据类型之间的比较。但是,对于复合类型数据的“="运算,其比较的目标是两个操作数是否是同一个对象。如果需要比较两个对象的值是否相同,则可以调用equals。方法。题目中函数equalsMethodl()的代码非常简单,首先生成两个字符串对象Sl和s2,然后输出表达式"Sl=S2”的结果。根据上面介绍的相等比较运算符的用法,字符串对象Sl和s2是复合数据类型,因此表达式“sl=s2”比较的是Sl和s2是否同一个对象。显然,si和s2虽然具有相同的值,即“howareyou",但它们是两个不同的对象。因此,本题的正确答案足C,27 .B解析:线程为一个程序中的单个执行流;进程是程序的一次动态执行过程,它对应了从代码加载、执行到执行完毕的一个完整过程,这个过程也是进程本身从产生、发展到消亡的过程。一个JaVaAPPIiCatiOn运行后,在系统中应该就是一个进程了(动态)。28.B解析:CDC和C1.DC都是Configuration的组成部分,CDC主要支持嵌入式设备开发,而C1.DC主要支持移动设备的开发。29.B解析:本题考查Java语言自动回收垃圾的功能,垃圾回收用于对象的清除,题中给出的4种垃圾回收方法,都是可行的。30.B解析:本题考查布局管理器的概念。这是重点题目,历次考试都有题目涉及该知识点,务必重视。Card1.ayOUt把容器分成许多层,每层只能放置一个构件。Flow1.ayout是Pane和Applet默认的布局管理器,构件在容器中从上到下、从左到右进行放置,所以选项B正确。Border1.ayout是Window、Frame和DiaIOg的默认布局管理器,在Border1.ayout布局管理器中构件分成5个区域,每个区域只能放置一个构件。Grid1.ayOUt使容器中各个构件呈网状布局,平均占据容器的空间。31.解析:第1处:classTransformTestFrame.extendsJFrame第2处:classTransformPanelextendsJFrame第3处:publicvoidpaintComponent(Graphicsg)【解析】第1处类中公有对象名称应与类名-致;第2处为继承的父类不正确;第3处从下面的super.paintCompo-nent(g);可判断出应有参数GraPhiCsg。32.第1处:addMouse1.istener(newMouseEvent1.istener)n第2处:g.setcolor(colorValueschcolor.getselectedln-ndex)n第3处:classMouseEvent1.istenerextendsMouseAda-npter11【解析】第1处是注册鼠标监听器,主要是单击动作;第2处是设置Graphics类对象g的颜色通过将从ChColor中选中的字符串转换成ColorValues类型来实现;第3处定义一个MouseEvent1.istener类来继承MouseAdapter鼠标事件适配器。33.B解析:除了基本文件访问外,Java还提供了通过网络使用UR1.访问对象的功能。该功能由UR1.输入流实现。34.D