您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 机械/模具设计 > (仅供参考)java期末考试样卷答案
习题一、选择题1.如下哪个字符串是Java中的合法标识符?(A)A、fieldnameB、superC、3numberD、#number2.Java中main()函数的返回值是什么类型?(D)A、StringB、intC、charD、void3.下列哪些语句关于Java内存回收的说明是正确的?(C)A、程序员必须创建一个线程来释放内存B、内存回收程序允许程序员直接释放内存C、内存回收程序负责释放无用内存D、内存回收程序可以在指定的时间释放内存对象4.以下关于继承的叙述正确的是(B)。A、在Java中一个类只能实现一个接口B、在Java中类只允许单一继承C、在Java中一个类不能同时继承一个类和实现一个接口D、在Java中接口只允许单一继承5.JavaApplet中的paint()方法使用哪种类型的参数?(A)A、GraphicsB、Graphics2DC、StringD、Color6.在使用interface声明一个接口时,只可以使用(D)修饰符修饰该接口。A、privateB、protectedC、privateprotectedD、public7.下面(B)函数是publicvoidexample(){...}的重载函数?A、publicvoidexample(){...}B、publicvoidexample(intm){...}C、publicvoidexample2(){...}D、publicintexample(){...}8.在浏览器中执行applet程序,以下选项中的(A)方法将被最先执行。A、init()B、start()C、destroy()D、stop()9.有程序片段如下,以下表示式的结果为true的是(B)。Floats=newFloat(0.1f);Floatt=newFloat(0.1f);Doubleu=newDouble(0.1);A、s==tB、s.equals(t)C、u.equals(s)D、t.equals(u)10.关于异常的含义,下列描述中最正确的一个是(C)。A程序编译错误B程序语法错误C程序运行时的错误D程序编译和运行时发生的错误11.类Panel默认的布局管理器是(B)。A、BorderLayoutB、FlowLayoutC、GridLayoutD、CardLayout12.下面哪个方法与applet的显示无关?(B)A、update()B、draw()C、repaint()D、paint()13.已知如下代码:publicclassTest{publicstaticvoidmain(Stringarg[]){longa[]=newlong[10];System.out.println(a[6]);}}请问哪个语句是正确的?(B)A程序输出nullB程序输出0C因为long[]数组声明不正确,程序不能被编译D程序被编译,但在运行时将抛出一个ArrayIndexOutOfBoundsException异常14.Java语言不是..(B)A、高级语言B、编译型语言C、结构化设计语言D、面向对象设计语言15.关于以下程序段的说明正确的是(C)publicclassArrayTest{publicstaticvoidmain(Stringargs[]){try{intx[]=newint[-5];System.out.println(此行将无法被执行!);}catch(NegativeArraySizeExceptione){System.out.println(exception:数组下标不能为负数。);}}}A、编译通过,输出:此行将无法被执行!B、编译通过,输出:此行将无法被执行!exception:数组下标不能为负数。C、编译通过,输出:exception:数组下标不能为负数。D、编译不能通过16.Java源文件和编译后的文件扩展名分别为(B)。A、.class和.javaB、.java和.classC、.class和.classD、.java和.java17.以下有关构造函数的说法,正确的是:(A)。A、一个类的构造函数可以有多个B、构造函数在类定义时被调用C、构造函数只能由对象中的其它方法调用D、构造函数可以和类同名,也可以和类名不同18.为类Employee中的一个无形式参数且无返回值的方法method书写方法头,以便使用类名Employee作为前缀就可以调用它(即可以通过类名调用方法method),该方法头的形式为(A)。A、staticvoidmethod()B、publicvoidmethod()C、finalvoidmethod()D、abstractvoidmethod()19.下列代码的执行结果是:(C)。publicclassTest5{publicstaticvoidmain(Stringargs[]){Strings1=newString(hello);Strings2=newString(hello);System.out.print(s1==s2);System.out.print(,);System.out.println(s1.equals(s2));}}A、true,falseB、true,trueC、false,trueD、false,false.20.下列不是Java关键字的是(D)。A、finalB、finallyC、nullD、sizeof21.以下(C)是java.io包中的一个兼有输入输出功能的类。A、ObjectB、SerializableC、RandomaccessFileD、java.io中不存在这样的类22.下面哪个语句正确地声明一个整型的二维数组?(D)Ainta[][]=newint[][];Binta[100][100]=newint[][];Cint[]a[]=newint[100][100];Dinta[][]=newint[100][100];23.编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。A.javaB.classC.htmlD.exe24.为读取的内容进行处理后再输出,需要使用下列哪种流?(D)AFilestreamBPipestreamCRandomstreamDFilterstream25.下列方法中可以用来创建一个新线程的是。(C)A实现java.lang.Runnable接口并重写start()方法B实现java.lang.Runnable接口并重写run()方法C继承java.lang.Thread类并重写run()方法D实现java.lang.Thread类并实现start()方法26.给出如下初始化语句Strings1=newString(“Hello”);Strings2=newString(“there”);Strings3=newString();以下哪种操作是合法的?(A)As3=s1+s2;Bs3=s1-s2;Cs3=s1&s2;Ds3=s1&&s2;27.容器Panel和Applet缺省使用的布局编辑策略是(B)ABorderLayoutBFlowLayoutCGridLayoutDCardLayout28.给出如下代码:classTest{privateintm;publicstaticvoidfun(){//somecode...}}如何使成员变量m被函数fun()直接访问?(C)A将privateintm改为protectedintmB将privateintm改为publicintmC将privateintm改为staticintmD将privateintm改为intm29.以下有关类的继承的说明中正确的是:(D)A子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性B子类只能继承父类的方法,不能继承父类的属性C子类只能继承父类的非私有属性,不能继承父类的方法D子类不能继承父类的私有属性30.以下语句有语法错的是:(A)Aintx=1;y=2;z=3Bfor(intx=10,y=0;x0;x++);Cwhile(x5);Dfor(;;);二、简答题1、请说明this,super,final各自的作用。this:①指代调用方法的当前对象;②在构造函数内使用this用于指代另外一个构造函数。super:提供了一种调用父类构造函数的方法。final:使得某个变量值只能被引用,而不能修改。2、试解释方法重构(方法覆盖)和方法重载的区分。①方法的覆盖出现在父类与子类之间,并且方法的特征要完全相同。②方法的重载可以出现在一个类中,也可以分别出现在父类与子类中,方法的特征一定不完全相同。3、请解释面向对象程序设计相关的几个概念:继承、多态、重载。继承:将相关类组成层次结构,允许新类从已存在的类中派生,通过保留它们的属性(即实例变量)和方法,并根据自己的要求添加新的属性的方法。多态:接口的多种不同的实现方式。重载:在一个类定义中,可编写几个同名的方法,但是只要它们的签名参数列表不同,Java就会将它们看做唯一方法。4、请说明抽象类和接口的异同点。抽象类:一种类,它不能实例化为一个对象,而只表示一种抽象的概念,继承它的子类可以对其进行具体实现,这种类中往往包含了抽象方法。接口:就是一系列常量和空方法的集合,它提供了多个类共有的方法,但不限制每个类如何实现这些方法。相同点:①二者都包含空方法,都必须在实现接口或继承抽象类的子类中具体实现这些方法。②由于二者都包含空方法,所以不能用new关键字来创建这两种类型的对象。③类之间具有继承关系,接口之间也可以具有这种关系,一个接口可以继承一个或多个接口。④接口和类一样可以具有public属性。在interface前加上public关键字,表示各个包中的类均可以实现这个接口,反之,只有同一个包中的类才可以实现这个接口。不同点:①抽象类在定义空方法时,其名称前必须加abstract关键字,而在接口中不需要。②在抽象类中,除空方法外,还可以定义实例变量和非空方法;而在接口中,只能定义常量和空方法。③接口允许多继承。一个接口可以继承多个接口,实现接口的类也可以同时实现多个接口,只要在这个类中对每个接口的方法都有具体的实现,但Java的类仅支持单继承。5、实例变量与局部变量的区别实例变量:也叫对象变量,在类中定义的没加static的变量,与类变量不同,类变量是所有对象共有,其中一个对象将它值改变,其他对象得到的就是改变后的结果,而实例变量则属对象私有,某一个对象将其值改变,不影响其他对象。局部变量:在方法中定义的只在特定的方法中可以访问的变量。区别:①局部变量定义在方法里面,实例变量定义在类以内方法之外;②局部变量只能在定义他的方法里面使用,直接调用变量名就行,实例变量至少可以在整个类内使用,使用时必须用对象去调用;③局部变量使用之前必须初始化,实例变量不需要赋初值,系统会给默认的初值;④局部变量在同一个方法里面不能重名,局部变量和实例变量可以重名,在方法里面采用就近原则,以局部变量为准;⑤实例变量属于对象,它描述了对象的属性,随着对象的存在而存在,局部变量是随着方法的调用而存在,一旦方法调用结束,局部变量也就消亡了。三、阅读程序1.以下程序段的输出结果为56789。publicclassTestArray{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[j]a[k])k=j;inttemp=a[i];a[i]=a[k];a[k]=temp;}for(i=0;ia.length;i++)System.out.print(a[i]+);System.out.println();}}2.编程填空(将横线上所缺的内容补充完整)下列程序中(Assign.java),指定变量b=50
本文标题:(仅供参考)java期末考试样卷答案
链接地址:https://www.777doc.com/doc-5792703 .html