JAVA期末复习和答案1_第1页
JAVA期末复习和答案1_第2页
JAVA期末复习和答案1_第3页
JAVA期末复习和答案1_第4页
JAVA期末复习和答案1_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Java期末复习题一、选择题:1、所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是   (B)     A.   类     B.   对象            C.   函数体                 D.   数据块    2、定义一个不能被继承的名为Abc的类的正确方法是(E)Aclass Abc

2、 Bnative class Abc Cabstract final class Abc Dclass Abcfinal; Efinal class Abc3、若要生成ClassA类的一个对象a,以下书写正确的是(A) A.ClassA a=new ClassA();B.ClassA a=new Class(); C.a=new ClassA();D.ClassA a=ClassA();4、 类的构造函数被自动调用执行的情况是在定义该类的  (c)    A.   成员函数时   B.   数据成员时 C.   对

3、象时     D.   构造函数时5、编译运行下面程序时有何种结果?请选择一个正确的答案(A)class Test public static void main() System.out.println("hello"); A程序不能编译,因为main()方法定义不正确。B程序能编译,但不能运行,因为class未声明为public的。C程序能无错地编译并运行,但运行时将产生异常。D程序运行时显示“hello”。6、关于抽象方法的说法正确的一项是(A)A、可以有方法体B、可以出现在非抽象类中C、抽象方法是没有方法体的方法D、抽象类中的

4、方法都是抽象方法7、 假定AB为一个类,则执行AB x=new AB( );语句时将自动调用该类的(B)  A有形参构造函数  B无形参构造函数     C其他成员函数      D重载函数  8、编译并运行如下程序后,结果是什么?请在给出的选项中选择出正确的答案(E)class Array public static void main(String args) int length=100; int d=new intlength; for(int index=0;index<length;index+)

5、 System.out.println(dindex); A因为int数组声明不正确,程序不能被编译。B程序被编译,但在运行时将抛出一个ArrayIndexOutOfBoundsException异常。C程序将显示数字0到99,然后将抛出一个ArrayIndexOutOfBoundsException异常。D程序被编译,但println()方法将抛出一个NoSuchMethodException异常。E程序正常运行,并显示100个0。9、下列关于接口的说法正确的是哪一项(D) A.接口与抽象类是相通的概念 B.实现一个接口必须实现 接口的所有方法C.接口之间不能有继承关系D.一个类可实现多个接

6、口10、   实现运行时的多态性用(A)  A重载方法          B构造方法           C非重载方法             D抽象方法11、哪一种布局管理器是从上到下、从左到右安排组件,当移动到下一行时是居中的(B)ABorderLayout BFlowLayout CGridLayoutDCardLayout EGridBagLayout12、下列对继承的说法正确的一项是(B) A.子类能继承父

7、类的所有方法和状态 B.子类能继承父类的非私有方法和状态 C.子类只能继承父类的public方法和状态 D.子类只能继承父类的方法,而不能继承状态13、 Java语言中,如果你有下面的类定义:abstract   class   Shape   abstract   void   draw(); class   Square   extends   Shape   如果你试图编译上面的代码会发生(B)。A 一切成功编译 B Shape可以编译Square不能编译 C Square可以编译Shape不能编译

8、D Shape、Square都不能编译14、下面代码是做什么的(E)JTextField tf=new JTextField(30);A代码不合法。在JTextField中,没有这样的构造方法B创建了一个30行的JTextField对象,但没进行初始化,它是空的。C创建了一个30列的JTextField对象,但没进行初始化,它是空的。D创建一个有30行文本的JTextField对象。E创建一个有30列文本的JTextField对象。15、构造方法何时被调用(B)A、类定义时 B、创建对象C、调用方法时 D、使用对象的变量时16、 int   my_Array; my_Array=ne

9、w   int5; for(int   count=0;count <=5;count+)System.out.println(my_Arraycount); 以上Java代码运行的结果是(d)。A 将1,2,3,4,5输出到屏幕 B 将0,1,2,3,4输出到屏幕C将0,1,2,3,4,5输出到屏幕 D将出现运行时异常17、给出如下代码:class Testprivate int m;public static void fun() / some code.如何使成员变量m 被函数fun()直接访问?(C)A、将private int m 改为protected i

10、nt m B、将private int m 改为 public int mC、将private int m 改为 static int m D、将private int m 改为 int m18、下面对形参的说法中哪一项是正确的(C)A必须有两个B至少有一个C可以没有D至少有两个19、在JAVA编程中,Java编译器会将java程序转换为(A)。A 字节码      B可执行代码      C机器代码      D以上所有选项都不正确20、下面的表达式中正确的是( b ) A.String s=你好;in

11、t i=3;s+=i; B.String s=你好;int i=3;if(i=s)s+=i; C.String s=你好;int i=3;s-=i; D.String s=你好;int i=3;s=i+;21、下列说法中正确的一项是(D)A不需要定义类就能创建对象 B对象中必须有简单变量C属性必须是简单变量D属性可以是简单变量,也可以是一个对象22、在JAVA编程中,以下(B)命令用来执行java类文件。A Javac      Bjava      Cappletviewer      D以上所有选项都

12、不正确23、下列语句片段 int a=10,b=4,c=20,d=6; System.out.println(a+*b+c*-d); 的结果为(C) A.144 B.28 C.140 D.不能执行24、下列说法哪一个是正确的(A)A类是变量和方法的集合体B数组是无序数据的集合C抽象类可以实例化D类成员数据必须是共有的25、 JAVA中,使用(C)修饰符时,一个类能被同一包或不同包中的其他类访问。A private           Bprotected           Cpublic &#

13、160;           Dfinal26、下面哪个修饰符修饰的方法只能被本类中的其他方法使用(C)A、protectedB、staticC、privateD、public27、关于对象成员占用内存的说法哪一项是正确(B)A同一个类的对象公用一段内存B同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C对象的方法不占用内存D以上说法都不对28、 JAVA中,类Worker是类Person的子类,Worker的构造方法中有一句“super()”,该语句(C)。 A调用类Worker中定义的super(   )方法 B 调用

14、类Person中定义的super(   )方法 C 调用类Person的构造函数 D 语法错误29、当方法遇到异常又不知如何处理时,下列哪种说法是正确的(B) A.捕获异常B.抛出异常 C.声明异常D.嵌套异常30、执行下面的赋值语句后,a的值为(B)A=Float.valueOf(“12.34”).floatValue();Aa=”12.34” Ba=12.34 Ca=1234 Da=1231、JAVA语言中,下面关于类的描述正确的是(B)。 A一个子类可以有多个父类 B 一个父类可以有多个子类 C子类可以使用父类的所有 D 子类一定比父类有更多的成员方法32、下列符号中不能作为J

15、ava标识符的是(C)A条件 Bxyz C45six D33、下列关于一个二维的整型数组的定义,不正确的是(A)Aint a1010=new int;Binta=new int1010;Cinta=new int1010;Dint a=new int1010;34、JAVA是一种完全面向(B)的语言。 A 过程           B对象             C组件             D服务 35、下列哪些不是Jav

16、a的关键字(B)Aextends Bopen Cclass Dif Eimport36、定义一个表示20个值为null的字符串数组,下面选项正确的是(D)。A、String a; B、String a;C、char a20; D、String a=new String20;37、JAVA中,实现继承的关键字是(C)。 A Public         Bclass           Cextends           Dimplements 38、在J

17、ava语言中,整型常数123占用的存储字节数是(C)A1 B2 C4 D839、设x=1、y=2和z=3,者表达式y+=z-/+x的值是(b)A3 B3.5 C4 D4.540、 application中的主类需包含main方法,main方法的返回类型是(D)。 Aint Bfloat Cdouble Dvoid41、在Java语言中,'u0041'在内存中占用的字节数是(D)A2 B4 C6 D842、应用程序中的main()方法返回的类型是(A)Avoid BString Cchar Dint 43、下程序片段,不能插入到第1行的是(b)。 1. 2.   

18、60; class     A 3.         /do   sth       4.       Apublic   class     MainClass   Bint       x=1;Cclass     ANotherClass       Dimport     java.util.*; 44、下面可作为pub

19、lic   void     aMethod(     ).重载方法的是(C)。 Avoid   aMethod(   ).               Bpublic  int     aMethod(). Cpublic  void  aMethod   (   ).     Dpublic int   aMethod  (   in

20、t   m).45、下面哪个语句会产生编译错误(C)A、float F=4096.0F; B、double D=4096.0; C、byte B=4096; D、char C=4096;46、假设A类有如下定义:   class     A int     i; static     String     s; void     method1()         static     void   

21、60; method2()           设a是A类的一个实例,下列语句调用错误的是(C)。A.System.out.println(a.i); Ba.method1( );     CA.method1( );       DA.method2( ) 47、在Java语言中,实型常数45.67在内存中占用的字节数是(C)A1 B2 C4 D848、下列关于实型变量书写正确的是(C)AE3 B2e0.3 C1.2e3 49、下列数据是常量(A)A、null B、name C、E D、ff5

22、0、选出所有不合法的表达式(D)A(true & true) B(4!=5 & 5=6) C(int myInt=0>3) Dfloat myFloat=40.0; 51、在Java语言中,'u0041'在内存中占用的字节数是(D)A15 B2 C4 D852、 不允许作为类及类成员的访问控制符的是(B)。 A.   public        B.   private       C.   static        

23、; D.   protected 53、设有代码:Boolean b1=new Boolean(true);Boolean b2=new Boolean(true);下面表达式是返回true的合法表达式(B)Ab1=b2 Bb1.equals(b2) Cb1 & b2 Db1| b254、现有两个类M、N,以下描述中表示N继承自M的是(D)。A、class M extends N B、 class N implements MC、class M implements N D、 class N extends M55、下列哪个选项是合法标识符(A)A_book B5files

24、C+static D-3.1415926 56、下列与其它选项不等的是(D)A2 B0xF C015 D0XF57、 为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。A.   static   void   method(   )           B.   public   void   method(   )  C.   final   void 

25、0; method(   )            D.   abstract   void   method(   )58、下列类定义中哪些是合法的抽象类定义(d)Aclass Animalabstract void growl(); Babstract Animalabstract void growl(); Cclass abstract Animalabstract void growl(); Dabstract class Animal Abstract void growl

26、(); Eabstract class Animalabstract void growl()System.out.println(“growl”);59、下列选项不属于Java保留字的是( A )Anull Bfalse Csizeof Dtrue60、 编译Java   Application   源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。A.   .java     B.   .class        C.   .html     &

27、#160;      D.   .exe二、填空题:1、 一个Java的图形用户界面的最基本组成部分是组件。2、登录Sun公司网站http:/.,能够看到有关J2SE、J2EE和J2ME的信息。无论哪种Java运行平台,都包含了相应的解释器,解释器负责将字节码文件加载到内存,然后采用解释方式执行字节码文件。3、在Java语言的简单数据类型中,占存储空间最少的数据类型byte.4、局部变量只能在声明它的方法或者语句块中使用,而且使用之前必须进行赋值。5、 Java语言共有三种注释,分别是/,/*/,/*/。6、Java程序必须经过编译,再经过虚拟机才能执行

28、。通过编译器,Java语言源程序转换成与平台无关的中间编码,Java称之为字节码。字节码再经过解释器的解释,转换为机器码,便可在计算机上运行。任何可以运行Java字节码的程序都可以看成是 ,如浏览器和Java的开发工具等都可以看成是JVM的一部分。7、在Java语言中,如果赋值运算符=两边的操作数类型不一致,并且左边操作数类型的优先级低于右边操作数类型的优先级,则需要对右边操作数进行强制转换。8、 编译 .java文件使用的命令是javac。9、抽象类体中,可以包含抽象方法,也可以不包含抽象方法,但类体包含抽象方法的类必须要声明为抽象类。抽象类不能实例化,即使抽象类中没有声明抽象方法,也不能实

29、例 化。10、画线的语句应该修改为static int var=100;,程序才能通过编译运行class MyClass int var=100; static int getVal() return var; 11、 83 % 9 的值是2。12、构造方法仅用于实例化对象,对成员变量进行初始化;成员方法用于对变量进行多种操作。子类对父类的私有成员没有访问权限,子类对父类的成员变量和成员方法具有访问权限。子类虽然继承了父类的成员变量和成员方法,但并不是对父类所有成员变量和成员方法 都具有访问权限,即并不是在自己声明的方法中能够访问父类所有成员变量或成员方法。13、Java中采用接口降低程序的复

30、杂性,提高编程效率,只要是因为它使代码可重用。14、接口可以看成是仅容纳抽象方法、常量,而又不能直接生成对象的特殊抽象类。15、 BorderLayout布局类的所在类包是java.awt。16、在Java中,所有的类都是通过直接或间接地继承得到的。17、 监听按扭被按下事件的监听器是ActionListener。18、在求解运算速度要求不高,但是要求程序简洁的问题时,通常采用 结构。19、new是实例化对象的操作符。30、Java使用16位的Unicode字符集,因此,Java字符是一个16位的无符号整数。31、 抛出异常的关键字是throw和throws。32、Java的浮点类型包括dou

31、ble和float两种。33、表达式16.8%5的结果是1.8。34、当方法有返回值时,必须在该方法体内使用return语句。35、保留字final是用于定义常量,定义值以后不能再改变。36、如果子类中的某个方法的方法头与他的父类中的某个方法的方法头完全一样,但方法实现的功能不同,称为子类对父类中同名方法的覆盖。37、Java源文件中可以有1个public类。38、在Java中有两种多态,一种是使用方法的重载实现多态,另一种是使用方法的覆盖实现多态。三、判断题1、 Java的类不允许多重继承,但接口支持多重继承。(T)2、无论AWT还是Swing设计的GUI组件必须要放置于容器中(T)。3、

32、在异常处理中总是将可能产生异常的语句放在try块中,用catch子句去处理异常,而且一个try块之后只能对应一个catch语句。(F)4、Java是面向对象程序设计语言(T)。5、 在一个Java源程序文件中,可以有多个public类。(F)6、子类向上转换成父类类型是安全的( )。7、 abstract方法所在的类必须是abstract类。(T)8、Java采用的是半编译半解释方式(F)。9、 使用方法length( )可以获得字符串或数组的长度。(T)10、接口中的方法都是abstarct方法(T)。11、 即使一个类中未显式定义构造函数,也会有一个缺省的构造函数,缺省的构造函数

33、是无参函数,函数体为空(T)12、静态方法不能使用this、super来调用(T)。13、 无论Java源程序包含几个类的定义,若该源程序文件以A.java命名,编译后生成的都只有一名为A的字节码文件(F)14、方法重载和方法改写都要求方法的返回类型必须相同(T)。15、当通过实现Listener接口完成事件处理时,要同时实现该接口中的所有方法。(T)16、子类构造方法中的第一条语句一定是通过super()调用父类的对应入口参数的构造方法或是通过this()调用本类的另一对应入口参数构造方法(T)。17、Package语句必须放在程序的第一句。(T)18、java中类是单一继承性,而接口是多继

34、承性(T)。19、 因为Java不支持多继承,所以定义类时implements关键字后面只能说明一个接口名(F)20、接口中定义的数据字段一定是常量(T)。四、简答题1、在右边的矩形框中写出该程序运行的结果。public class Testpublic static void main(String args) ClassB cb1=new ClassB(1);ClassB cb2=new ClassB(1);if(cb1.x=cb2.x)System.out.println("cb1=cb2");elseSystem.out.println("cb1!=cb2

35、");class ClassB int x;ClassB(int x)this.x=x; 答案:cb1=cb22、将下面的switch语句用嵌套的if语句表示出来switch(choice) case 1:a=0; b=0; break; case 2:a=1; b=1; break; case 3:a=2; b=2; break; default:c=2; d=3; break;答案:if(a=0)b=0; Else if(a=1)b=1; Else if(a=2)b=2; Else c=2;d=3;3、写出下列程序的运行结果import java.io.*;public clas

36、s Test public static void main(String args) subclass subW=new subclass(); subW.doPrint(); class superClass int x; superClass() x=3; System.out.println("in superClass:x="+x); void doPoint()class subclass extends superClass int x; subclass() super(); x=8; System.out.println("in subClass

37、():x="+x); void doPrint() super.doPoint(); System.out.println("super.x="+super.x+" sub.x="+x); in subClass():x=8super.x=3 sub.x=84、在右边的矩形框中写出该程序运行的结果。class StaticTest static int x=1;int y;StaticTest()y+;public static void main(String args ) StaticTest st=new StaticTest(); Sy

38、stem.out.println("x=" + x); System.out.println("st.y=" + st.y); st=new StaticTest(); System.out.println("st.y=" + st.y); static x+;5、写出下列程序的运行结果class Time1 private int hour; private int minute; private int second; public Time1() setTime(0,0,0); public Time1(int hh) setT

39、ime(hh,0,0); public Time1(int hh,int mm) setTime(hh,mm,0); public Time1(int hh,int mm,int ss) setTime(hh,mm,ss); public String toString() retunr (hour+":"+(minute<10?"0":"")+minute+":"+(second<10?"0":"")+second); public class MyTime1

40、private static Time1 t0,t1,t2,t3; public static void main(String args) t0=new Time1(); t1=new Time1(11); t2=new Time1(22,22); t3=new Time1(33,33,33); System.out.println("t0="+t0.toString(); System.out.println("t1="+t1.toString(); System.out.println("t2="+t2.toString();

41、System.out.println("t3="+t3.toString(); 答案:t0=0:00:00t1=11:00:00t2=22:22:00t3=0:33:336、在右边的矩形框中写出该程序运行的结果。public class TestArray public static void main(String args ) int i , j ;int a = 1,3,2,5,4; for ( i = 0 ; i < a.length-1; i + ) int k = i; for ( j = i ; j < a.length ; j+ ) if ( a

42、j>ak ) k = j; int temp =ai; ai = ak; ak = temp; for ( i =0 ; i<a.length; i+ ) System.out.print(ai+" "); System.out.println( ); 答案:5、4、3、2、17、写出下列程序的运行结果public class Exam public static void main(String args) int x=5;int m=0;x+=x+ +(x+ +m);System.out.println(x);答案:168、在右边的矩形框中写出该程序运行的结

43、果。class MyException extends Exceptionprivate int detail;MyException( int a ) detail = a;public String toString( )return "MyException "+detail; public class ExceptionDemopublic static void compute(int a) throws MyExceptionSystem.out.println("called compute("+a+")");if( a

44、>10 )throw new MyException(a);System.out.println("normal exit"); public static void main( String args )trycompute(6 );compute( 12 );catch( MyException e )System.out.println("Caught "+e); 答案:normal exitcalled compute(12)Caught MyException 129、试标识出下面的QQ类中的所有无效语句(用下划线标示出),对每个无效语句

45、说出其无效的理由。class QQ private int alpha; private int beta; public static void classMethod() this.beta=this.alpha*2; /beta和alpha不是静态. public QQ() /无返回值,应该用void QQ(0,0); public QQ(int x,int y) /无返回值,应该用void alpha=this.x; /应该是this.alpha=x;this.beta=y; beta=this.y; 10、在右边的矩形框中写出该程序运行的结果。class OverloadDemo v

46、oid testOverload( int i ) System.out.println(“int”); void testOverload(String s) System.out.println(“String”); public static void main(String args ) OverloadDemo a=new OverloadDemo ( ); char ch=x; a.testOverload(ch); 答案:int11、写出下列程序的运行结果public class Text public int t=4;public static void main(String args) new Text().NumberPlay();public void NumberPlay()int t=2;t=t+5;this.t=this.t-2;t=t-this.t;System

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论