《JAVA 语言程序设计复习题.docx》由会员分享,可在线阅读,更多相关《JAVA 语言程序设计复习题.docx(74页珍藏版)》请在课桌文档上搜索。
1、JAVA复习题JAVA语言程序设计期末考试试题及答案1(应考必备题库)一、单选择题1、编译JaVaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)oA.javaB.classC.htmlD.ee2、设x=l,y=2,z=3,则表达式y+=zx的值是(八)。A.3B.3.5C.4D.53、不允许作为类及类成员的访问控制符的是(C)oA.publicB.privateC.staticD.protected4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(八)0A.staticvoidmet
2、hod()B.publicvoidmethod()C.finalvoidmethod()D.abstractvoidmethod()二、填空题1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码和解释运行字节码。2、在JaVa的基本数据类型中,Char型采用UnieOde编码方案,每个UniCode码占用2字节内存空间,这样,无论是中文字符还是英文字符,都是占用2字节内存空间。3、设x=2,则表达式(x+)3的值是004、若X=5,y=10,则X=y的逻辑值分别为true和false。5、抽象(abstract)方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方
3、法必须在抽象类之中定义。最终但皿方法是不能被当前类的子类重新定义的方法。6、创建一个名为MyPackage的包的语句是PaCkaReMVPaCkage;,该语句应该放在程序的位置为:应该在程序第句O7、设有数组定义:intMylntArray=10,20,30,40,50,60,70;则执行以下几个语句后的输出结果是120ints=0;for(inti=0;iMyIntArrayJength;i+)if(i%2=1)s+=MylntArrayi;System.out.println(三);8、在JaVa程序中,通过类的定义只能实现一单一重继承,但通过接口的定义可以实现.多重继承关系。三、写出下
4、面程序的运行结果Inimportjava.io.*;publicclassabc(publicstaticvoidmain(Stringargs)ABs=newAB(Hello!zlloveJAVA.);System.out.println(s.toString();)classABStringsi;Strings2;publicABfStringstrl,Stringstr2)si=strl;s2=str2;publicStringtoString()(returnsl+s2;)运行结果:Hello!IIoveJAVA.2、 importjava.io.*;publicclassabcpub
5、licstaticvoidmain(Stringargs)intizs=0;inta=10,20,30,40,50,60,70,80,90;for(i=0;iCharargD、StringBufferargs2 .以下关于继承的叙述正确的是(八)oA、在JaVa中类只允许单一继承B、在JaVa中一个类只能实现一个接口C、在JaVa中一个类不能同时继承一个类和实现一个接口D、在JaVa中接口只允许单一继承3.Paimo方法使用哪种类型的参数?(A)A、4.GraphicsB、Graphics2D以下哪个不是JaVa的原始数据类型C、SiringD、Color(B)A、5.intB、Boolean
6、以下哪项可能包含菜单条(BC、floatD、char)oA、PanelB、FrameC、AppletD、Dialog6.若需要定义一个类域或类方法,应使用哪种修饰符?(八)A、staticB、packageCprivateD、public7 .在浏览器中执行applet程序,以下选项中的哪个方法将被最先执行(八)。A、init()B、start()C、destroy()D、stop()8 .给出下面代码,关于该程序以下哪个说法是正确的?(C)publicclassPersonstaticintarr=newint5;publicstaticvoidmain(Stringa)(System.ou
7、t.println(arr0);A、编译时将产生错误B、编译时正确,运行时将产生错误C、输出零D、输出空9 .下列哪些语句关于JaVa内存回收的说明是正确的?(B)A、程序员必须创建一个线程来释放内存B、内存回收程序负责释放无用内存C、内存回收程序允许程序员直接释放内存D、内存回收程序可以在指定的时间释放内存对象10 .以下哪个关键字可以用来对对象加互斥锁?(B)CserializeDC、1D、3A、transientB、synchronizedstatic11.以下代码段执行后的输出结果为(八)intX=-3;inty=-10;System.out.println(y%x);A、-1B、21
8、2.有以下程序片段,下列哪个选项不能插入到行1。(D)1 .2 .publicclassInteresting(3 ./dosth4 .)5 importjava.awt.*;B、packagemypackage;C、classOtherClassD、publicclassMyClass13 .设有下面两个赋值语句:a=Integer,parselnt(iiYln);b=Integer,valuef(iiI2ff).intValue();下述说法正确的是(D)oA、a是整数类型变量,b是整数类对象。B、a是整数类对象,b是整数类型变量。C、a和b都是整数类对象并且值相等。D、a和b都是整数类型
9、变量并且值相等。14 .FiIterOutputStream是BufferedOutputStreamsDataOutputStream及PrintStream的父类,以下哪个类可能是FiIterOUtPUtStream构造函数的参数类型?AA、OutputStreamB、FileC、InputStreamD、BufferedOutputStream15 .在编写JaVaAPPlet程序时,需在程序的开头写上(B)语句。A、importjava.awt.*;B、importjava.applet.Applet;C、importjava.io.*;D、importjava.awt.Graphic
10、s;16 .类Parent、Child定义如下:1. publicclassParent2. publicfloataFun(floata,floatb)throws3. IOException4. )5. publicclassChildextendsParent6.7. )将以下哪种方法插入行6是不合法的。(八)AnfloataFun(floata,floatb)B、publicintaFun(inta,intb)throwsException)C、publicfloataFun(floatp,floatq)D、publicintaFun(inta,intb)throwsIOExcepti
11、on17 .在使用interface声明一个接口时,只可以使用(D)修饰符修饰该接口。A、privateprotectedC、privateprotectedD、public18、有以下方法的定义,请选择该方法的返回类型(D)。ReturnTypemethod(bytex,doubley)(return(short)xy*2;)AbyteB、shortC、intD、double19、关于以下代码段的说法正确的是(D)1. Strings=uabcde;2. StringBuffersl=newStringBuffer(11abcde11);3. if(s.equals(sl)4. sl=nul
12、l;5. if(sl.equals(三)6. s=null;A、第1行编译错误,String的构造器必须明确调用B、第3行编译错误,因为S与Sl有不同的类型C、编译成功,但执行时在第5行有异常抛出D、编译成功,过程中也没有异常抛出20、编译并运行以下程序,以下描述哪个选项是正确的(C)1. classX2. protectiedStringtoString()i3. returnsuper.toString();4. )A、编译通过运行无异常B、编译通过但运行时出错5. 行2出错,不能成功编译D、不能成功编译,行3出错三.程序阅读题1 .以下程序的输出结果为相等OclassStringTest
13、l(publicstaticvoidmain(Stringargs)(Stringsl=11hello,;Strings2=newString(,hello11);if(sl.equals(s2)SyStem.oUtPrintln(相等);elseSyStem.out.rintln(不相等”);1)2 .以下程序段的输出结果为56789opublicclassTestArray(publicstaticvoidmain(Stringargs)inti,j;inta=5,9,6,8,7;for(i=0;ia.length-1;i+)intk=i;for(j=i;ja.length;j+)if(a
14、fjak)k=j;inttemp=ai;ai=ak;akj=temp;for(i=0;i3numberD、#number3、已知如下定义:Strings=story;下面哪个语句不是合法的(C)A、s+=books;B、s=s+100;CintIen=s.length;D、Stringt=s+“abc;4、如下哪个是JaVa中有效的关键字(C)AnameB、helloC、falseD、good5、下面的代码段执行之后CoUnt的值是什么(D)intcount=1;for(inti=1;iclassC、interfaceD、static8、如果容器组件P的布局是BOrder1.ayOut,则在P
15、的下边中添加一个按钮b,应该使用的语句是(C)Ap.add(b);p.add(b,North);C、p.add(b,South);D、b.add(pzNorth);9、声明并创建一个按钮对象b,应该使用的语句是(八)A、Buttonb=newButton();B、buttonb=newbutton();C、Buttonb=newb();D、b.set1.abel(确定);10、Frame对象默认的布局管理器是(B)A、FIow1.ayoutB、Border1.ayoutCsCard1.ayoutD、null11、下列哪一个import命令可以使我们在程序中创建输入/输出流对象(C)A、impo
16、rtjava.sql.*;B、importjava.util.*;Cnimportjava.io.*;D、.*;12、下面哪一个import命令可以为我们提供编写网络应用程序的类(D)Aimportjava.sql.*;importjava.util.*;C、importjava.io.*;D、.*;13、如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象(八)A、FiIeInputStreamB、FiIeOutputStreamCsDataOutputStreamD、FiIeWriter二、填空题1、如果将类MyCIass声明为public,它的文件名称必须是(MVCIaSSjava
17、)才能正常编译。2、JaVa程序中的单行注释符是(),多行注释符是(*/)o3、JaVa中布尔类型的常量有两种,它们是(true)和(false)。4、Java中用于定义小数的关键字有两个:(float)和(double),后者精度高于前者。5、Java中用于两个数相等比较的运算符是:(=),用于不相等比较的运算符是(O)06、在JaVa中定义一个字符串类型的变量Str的语句是:(StrinRStr;),定义一个具有10个元素的整型数组a的语句是:(int1a=newint101;)。7、导入mypackage包中的所类的命令是(importmvpackaHe.*;)。8、当声明一个数组int
18、arr=newint5;时,这代表这个数组所保存的变量类型是(int),数组名是(arr),数组的大小为(5),数组元素下标的使用范围是(0到4)。9、假设X=I3,y=4,则表达式x%y!=O的值是(true),其数据类型是(boolean)。10、异常处理是由(try)、(catch)和finally块三个关键所组成的程序块。11、以下程序段的输出结果是(三角形)intX=5,y=6,z=4;if(x+yz&x+zy&z+yx)System,out.printin(三角形“);elseSystem.out.printin(不是三角形;12、下面程序段的执行结果是一(65432)inta=2
19、,3,4,5,6);for(inti=a.length-1;i=0;i)System.out.print(ai+uu);三、程序阅读题1、以下程序的输出结果为Peteris17yearsold!。publicclassPersonStringname;intage;publicPerson(Stringname,intage)this.name=name;this.age=age;)publicstaticvoidmain(Stringargs)Personc=newPerson(,Peter,z17);System,out.printin(c.name+,is”+c.age+,yearsol
20、d!11);)2、以下程序的输出结果为课程号:101课程名:ASP学分:3opublicclassCourseprivateStringeNumber;privateStringcName;privateintcUnit;publicCourse(Stringnumber.Stringname,intunit)cNumber=number;cName=name;cUnit=unit;publicvoidprintCourselnfoOSystem,out.printIn(uiM:,+eNumber+”课程名:+cName+,学分:+cUnit);)classCourseTestpublicst
21、aticvoidmain(Stringargs)Coursec;c=newCourse(11101,ASPu,3);c.printCourselnfo();)3、以下程序的输出结果为汤姆猫体重:20.0fr_opublicclassTomprivatefloatweight;privatestaticStringname;publicvoidsetweight(floatweight)this.weight=weight;)privatevoidout()System.out.printinname+”体重:11+weight+“斤”);)publicstaticvoidmain(String
22、args)Tom.name=汤姆猫,;Tomcat=newTom();cat.setweight(20);cat.out();)4、以下程序的输出结果_姓名:TOm年龄:15家庭住址:金水区电话:66123456学校:九中一。publicclassFatherStringname,address,tel;intage;publicFather(Stringname,intage)this.name=name;this.age=age;)voidout()System,out.print(,:11+name);System,out.print(11年龄:+age);)voidOUtOther()
23、System,out.print(11家庭住址:+address);System,out.print(,电话:+tel);)classSonextendsFatherStringschool;publicSon(Stringname,intage)super(name,age);voidout()super.out();super.OUtOther();System,out.printIn(11学校:n+school);)publicstaticvoidmain(Stringargs()Sonson=newSon(,Tom11,15);son.address=金水区;son.school=九中
24、;son.tel=,6612345;son.out();)5、下列程序的运行结果是_12345opublicclassMyClassinta=1,2,3,4,5);voidout()for(intj=O;ja.length;j+)System.out.print(aj+”);publicstaticvoidmain(Stringargs)MyClassmy=newMyClass();my.out();)四、简答题1、简述JaVa中异常处理的机制?答:首先JaVa的异常是面向对象的。一个JaVa的Exception是一个描述异常情况的对象.当出现异常情况时,一个Exception对象就产生了,并
25、放到异常的成员函数里。Java的异常处理是通过5个关键词来实现的:try,catch,throw,throws和finallyo1.异常处理:在JaVa语言的错误处理结构由try,catch,finally三个块组成。其中try块存放将可能发生异常的JaVa语言,并管理相关的异常指针;CatCh块紧跟在try块后面,用来激发被捕获的异常;finally块包含清除程序没有释放的资源,句柄等。不管try块中的代码如何退出,都将执行finally块。2.抛出异常:JaVa语言可以不在方法中直接捕获,而用throw语句将异常抛给上层的调用者。ThrOW语句就是来明确地抛出一个异常;首先你必需得到一个T
26、hrowable的实例句柄,通过参数传到catch中,或者采用new操作符来创建一个。2、什么是继承?答:通过必要的说明能够实现某个类无需重新定义就拥有另一个类的某些属性和方法,并把这种关系称为继承,先定义的类称为父类,后定义的类称为子类,并且允许多层的继承关系。3、请简述重载和重写的区别?答:方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写OVeITiding是父类与子类之间多态性的一种表现,重载OverIOading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写(Overriding)。子类的对象使
27、用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(OVerIOading)。OVerIOaded的方法是可以改变返回值的类型。五、程序设计题1、按以下要求编写程序(1)创建一个Rectangle类,添加width和height两个成员变量(2)在Rectangle中添加两种方法分别计算矩形的周长和面积(3)编程利用ReCtangIe输出一个矩形的周长和面积解答:publicclassRectanglefloatwidth,height;publicRectangle(floa
28、twidth,floatheight)this.width=width;this.height=height;)publicfloatget1.ength()return(this.width+this.height)*2;publicfloatgetArea()returnthis.width*this.height;)publicstaticvoidmain(Stringargs)Rectanglerect=newRectangle(10,20);SyStem.out.printin(周长是:,+rect.get1.ength();SyStem.out.printin(面积是:+rect.
29、getArea();)2、按以下要求编写程序(1)编写Animal接口,接口中声明run()方法(2)定义Bird类和Fish类实现Animal接口(3)编写Bird类和FiSh类的测试程序,并调用其中的run()方法解答:publicinterfaceAnimalvoidrun();)classBirdimplementsAnimalpublicvoidrun()System,out.printin(鸟儿在飞.;)classFishimplementsAnimalpublicvoidrun()System,out.printin(鱼儿在游);)publicclassTestAnimalpub
30、licstaticvoidmain(Stringargs)Birdbird=newBird();bird,run();Fishfish=newFish();fish.run();3、编写一个Frame框架应用程序,要求如下:(1)在窗口设置两个菜单文件、“编辑(2)在“文件菜单里添加三个菜单项”打开、保存、关闭(3)在“编辑菜单里添加两个菜单项“复制、粘贴(4)点击关闭菜单项时,使程序关闭。解答:importjava.awt.Color;importjava.awt.Frame;importjava.awt.Menu;importjava.awt.MenuBar;importjava.awt.
31、Menuitem;importjava.awt.event.ActionEvent;importjava.awt.event.Action1.istener;importjava.awt.event.WindowAdapter;importjava.awt.event.WindowEvent;*主窗体*/publicclassMyFrameextendsFrameprivatestaticfinallongSeriaIVerSionU工D=68954638956566262941.;privateFramefrmMain;/窗体MenuBarmb;/菜单栏MenumnuFile;/”文件”菜单
32、MenumnuEdit;/“编辑”菜单MenuItemmipen;/“打开”菜单项MenuItemmiSave;/”保存”菜单项MenuItemmiClose;/“关闭”菜单项MenuItemmiCopy;/“复制”菜单项MenuItemmiPaste;/“粘贴”菜单项publicMyFrame()frmMain=newFrame(主窗体;/创建菜单栏mb=newMenuBar();/创建菜单mnuFile=newMenU(文件”);mnuEdit=newMenU(编辑”);/创建菜单项mipen=newMenuitem(11TJFn);miSave=newMenU工tem(保存”);miCl
33、ose=newMenU工tem(“关闭”);miCopy=newMenuitem(11MlJn);miPaste=newMenU工tem(粘贴”);)publicvoidShowFrame()frmMain.setSize(800,600);fr11Main.Set1.ocation(100,100);frmMain.SetBackground(Color.white);frmMain.SetVisible(true);frmMain.Set1.ayout(null);frmMain.addWindow1.istener(newWindowHandlerO);/注册窗口监听器/将菜单栏放入窗体
34、中frmMain.SetMenuBar(mb);/将菜单放入菜单栏中mb.add(mnuFile);mb.add(mnuEdit);/将菜单项放入菜单中mnuFile.add(mipen);mnuFile.add(miSave);mnuFile.add(miClose);mnuEdit.add(miCopy);mnuEdit.add(miPaste);/注册动作事件监听器miClose.setActionCommand(umiClose-Clickedu);miClose.addActIon1.istener(newMenuHandler();)/定义一个内部类,在这个类中编写窗口关闭事件处理
35、程序。privateclassWindowHandlerextendsWinciowAciapterpublicvoidwindowclosing(WindowEvente)System,exit(0);/退出应用程序,状态码0表示正常终止,非0表示异常终止。)/定义一个内部类,在这个类中编写动作事件处理程序。privateclassMenuHandlerimplementsAction1.istenerpublicvoidactionPerformed(ActionEvente)if(e.getActionCommand()=11miClose-Clicked11)System,exit(0
36、);/退出应用程序)publicclassTestMyFramepublicstaticvoidmain(Stringargs)/启动主窗体MyFrameguiWindow=newMyFrame();guiWindow.ShowFrame();)JAVA语言程序设计期末考试试题及答案4(应考必备题库)一、单选题1、下列程序段执行后的结果是(八)oStrings=newString(abcdefg);for(inti=0;is.length();i+=2)System.out.print(s.charAt(i);A)acegB)ACEGC)abcdefgD)abed2、有整型数组:int乂=12
37、,35,8,7,2;,则调用方法人为560曲)后,数组X中的元素值依次是(八).A)2781235B)1235872C)35128D)87123523、下面的程序段创建了BUfferedReader类的对象in,以便读取本机C盘my文件夹下的文件l.txt。FiIe构造函数中正确的路径和文件名的表示是(C)。Filef=newFile(填代码处);file=newFiIeReaderff);in=newBufferedReaderffiIe);A),.l.txtB),.myl.txtC)c:myl.txtD)c:myl.txt4、应用程序的main方法中有以下语句,则输出的结果是(八)。Stringsl=newString(abc);Strings2=newString(abc);booleanbl=sl.equals(s2);booleanb2=(sl=s2);System.out.print(bl+b2);A)truefalseB)falsetrueC)truetrueD)falsefalse5、应用程序的main方法中有以下语句,则输出的结果是(B)。Hashtablehashtable=newHashtablef);hashtable.put(,12345);hashtable.put(,y,67890);hashtable.put(
链接地址:https://www.desk33.com/p-1341397.html