您好,欢迎访问三七文档
当前位置:首页 > 高等教育 > 习题/试题 > java期末试题及答案
1一、单选择题(每小题2分,共10分)1、编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。A..javaB..classC..htmlD..exe2、设x=1,y=2,z=3,则表达式y+=z--/++x的值是(A)。A.3B.3.5C.4D.53、在JavaApplet程序用户自定义的Applet子类中,一般需要重载父类的(D)方法来完成一些画图操作。A.start()B.stop()C.init()D.paint()4、不允许作为类及类成员的访问控制符的是(C)。A.publicB.privateC.staticD.protected5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。A.staticvoidmethod()B.publicvoidmethod()C.finalvoidmethod()D.abstractvoidmethod()二、填空题(每空格1分,共20分)1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码、和解释运行字节码。2、如果一个JavaApplet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是Applet、类的子类并且存储该源程序文件的文件名为MyApplet。3、如果一个JavaApplet程序文件中定义有3个类,则使用Sun公司的JDK编译器javac.exe编译该源程序文件将产生3个文件名与类名相同而扩展名为.class的字节码文件。4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2字节内存空间,这样,无论是中文字符还是英文字符,都是占用2字节内存空间。5、设x=2,则表达式(x++)/3的值是0。6、若x=5,y=10,则xy和x=y的逻辑值分别为true和false。7、抽象(abstract)方法方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法方法是不能被当前类的子类重新定义的方法。8、创建一个名为MyPackage的包的语句packageMyPackage;,该语句应该放在程序的位置为:应该在程序第一句。9、设有数组定义:intMyIntArray[]={10,20,30,40,50,60,70};则执行以下几个语句后的输出结果是120。ints=0;for(inti=0;iMyIntArray.length;i++)if(i%2==1)s+=MyIntArray[i];System.out.println(s);10、在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。三、写出下列程序完成的功能。(每小题5分,共20分)1、publicclassSum{publicstaticvoidmain(Stringargs[]){doublesum=0.0;for(inti=1;i=100;i++)sum+=1.0/(double)i;2System.out.println(sum=+sum);}}1、计算1/1+1/2+1/3+...+1/100的值。2、importjava.io.*;publicclassReverse{publicstaticvoidmain(Stringargs[]){inti,n=10;inta[]=newint[10];for(i=0;in;i++)try{BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));a[i]=Integer.parseInt(br.readLine());//输入一个整数}catch(IOExceptione){};for(i=n-1;i=0;i――)System.out.print(a[i]+);System.out.println();}}2、从标准输入(即键盘)读入10个整数存入整型数组a中,然后逆序输出这10个整数。3、importjava.awt.*;publicclassabc{publicstaticvoidmain(Stringargs[]){newFrameOut();}}classFrameOutextendsFrame//Frame为系统定{Buttonbtn;//义的窗框类FrameOut(){super(按钮);btn=newButton(按下我);setLayout(newFlowLayout());add(btn);setSize(300,200);show();}}3、创建一个标题为按钮的窗框,窗框中显示有按下我字样的按钮。4、importjava.io.*;publicclassabc{publicstaticvoidmain(Stringargs[]){SubClasssb=newSubClass();System.out.println(sb.max());}}classSuperClass{inta=10,b=20;}classSubClassextendsSuperClass{intmax(){return((ab)?a:b);}}4、求两个数的最大值。3四、写出下面程序的运行结果(每小题10分,共30分)1、importjava.io.*;publicclassabc{publicstaticvoidmain(Stringargs[]){ABs=newAB(Hello!,IloveJAVA.);System.out.println(s.toString());}}classAB{Strings1;Strings2;AB(Stringstr1,Stringstr2){s1=str1;s2=str2;}publicStringtoString(){returns1+s2;}}Hello!IloveJAVA.2、importjava.io.*;publicclassabc{publicstaticvoidmain(Stringargs[]){inti,s=0;inta[]={10,20,30,40,50,60,70,80,90};for(i=0;ia.length;i++)if(a[i]%3==0)s+=a[i];System.out.println(s=+s);}}s=180五、使用Java语言编写程序。(每小题10分,共20分)1、编写一个字符界面的JavaApplication程序,接受用户输入的10个整数,并输出这10个整数的最大值和最小值。importjava.io.*;publicclassabc{publicstaticvoidmain(Stringargs[]){inti,n=10,max=0,min=0,temp=0;try{BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));max=min=Integer.parseInt(br.readLine());}catch(IOExceptione){};for(i=2;i=n;i++){try{BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));temp=Integer.parseInt(br.readLine());if(tempmax)max=temp;if(tempmin)min=temp;}catch(IOExceptione){};}System.out.println(max=+max+\nmin=+min);}}41.给定下面的代码片段:1)Stringstr=null;2)if((str!=null)&&(str.length()10)){3)System.out.println(morethan10);4)}5)elseif((str!=null)&(str.length()5)){6)System.out.println(lessthan5);7)}8)else{System.out.println(end);}哪些行会导致错误?Aline1Bline2Cline5Dline82.下面哪种注释方法能够支持javadoc命令:A/**...**/B/*...*/C//D/**...*/3.欲编写如下图的一个界面,用于显示用户指定的图像:如果在区域A中只能放置一个AWT组件,从各组件的本来功能角度考虑,最好使用哪种组件:ATextAreaBPanelCAppletDCanvas4.界面如上题所示。若Button1的功能是:点击后弹出一个用于输入的界面,获取用户想要显示的图像文件名,则该界面最好是(从编程简单和程序不易出错的角度考虑):A模式(Modal)DialogB非模式(None-modal)DialogCFileDialogDFrame5.界面如上题所示。如果在A区域使用某种AWT组件(java.awt.Component的子类)来负责绘制图像,则绘图的语句最好应放在该组件的哪个方法中(考虑到应用程序和Java虚拟机的AWT线程都会要求重画该组件)?A构造方法Bpaint(Graphicsg)Cupdate(Graphicsg)Drepaint()6.下面关于Applet的说法正确的是AApplet也需要main方法BApplet必须继承自java.awt.AppletCApplet能访问本地文件DApplet程序不需要编译7.看下面一段程序:classAclass{voidgo(){System.out.println(Aclass);}}publicclassBclassextendsAclass{voidgo{System.out.println(Bclass);}publicstaticvoidmain(Stringargs[]){Aclassa=newAclass();Aclassa1=newBclass();a.go();a1.go();5}以上程序运行结果是:AAclassAclassBBclassBclassCAclassBclassDBclassAclass8.下列关于Java线程的说法那些是正确的()A每一个Java线程可以看成由代码、一个真实的CPU以及数据三部份组成。B创建线程的两种方法中,从Thread类中继承的创建方式可以防止出现多父类问题。CThread类属于java.util程序包。D以上说法无一正确。9.看以下程序:booleana=false;booleanb=true;booleanc=(a&&b)&&(!b);intresult=c==false?1:2;这段程序执行完后,c与result的值是:Ac=false;result=1;Bc=true;result=2;Cc=true;result=1;Dc=false;result=2;10.运行下列程序,会产生什么结果publicclassXextendsThreadimplementsRunable{publicvoidrun(){System.out.println(thisisrun());}publicstaticvoidmain(Stringargs[]){Threadt=newThread(newX());t.start();}}A第一行会产生编译错误B第六行会产生编译错误C第六行会产生运行错误D程序会运行和启动11.指出下列程序的运行结果inti=9;switch(i){default:System.out.println(default);case0:System.out.println(zero);break;case1:System.out.println(one);case2:Syste
本文标题:java期末试题及答案
链接地址:https://www.777doc.com/doc-6335963 .html