JAVA期末复习和答案(1) 下载本文

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 method2() { } }

设a是A类的一个实例,下列语句调用错误的是(C)。

A.System.out.println(a.i); B.a.method1( ); C.A.method1( ); D.A.method2( ) 47、在Java语言中,实型常数45.67在内存中占用的字节数是(C) A.1 B.2 C.4 D.8 48、下列关于实型变量书写正确的是(C)

A.E3 B.2e0.3 C.1.2e3 D.1.2E0.3 49、下列数据是常量(A)

A、null B、name C、E D、ff 50、选出所有不合法的表达式(D)

A.(true & true) B.(4!=5 & 5==6) C.(int myInt=0>3) D.float myFloat=40.0; 51、在Java语言中,'\A'在内存中占用的字节数是(D)

A.15 B.2 C.4 D.8 52、 不允许作为类及类成员的访问控制符的是(B)。

A. public B. private C. static D. protected 53、设有代码: Boolean b1=new Boolean(true); Boolean b2=new Boolean(true); 下面表达式是返回true的合法表达式(B)

A.b1==b2 B.b1.equals(b2) C.b1 & b2 D.b1| b2

54、现有两个类M、N,以下描述中表示N继承自M的是(D)。

A、class M extends N B、 class N implements M C、class M implements N D、 class N extends M 55、下列哪个选项是合法标识符(A)

A._book B.5files C.+static D.-3.1415926 56、下列与其它选项不等的是(D)

A.2 B.0xF C.015 D.0XF 57、 为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。

A. static void method( ) B. public void method( )

C. final void method( ) D. abstract void method( )

58、下列类定义中哪些是合法的抽象类定义(d)

A.class Animal{abstract void growl();} B.abstract Animal{abstract void growl();}

C.class abstract Animal{abstract void growl();} D.abstract class Animal{ Abstract void growl();}

E.abstract class Animal{abstract void growl(){System.out.println(“growl”);}} 59、下列选项不属于Java保留字的是( A )

A.null B.false C.sizeof D.true

60、 编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。

A. .java B. .class C. .html D. .exe

二、填空题:

1、 一个Java的图形用户界面的最基本组成部分是组件。

2、登录Sun公司网站http://.java.sun.com,能够看到有关J2SE、J2EE和J2ME的信息。无论哪种Java运行平台,都包含了相应的解释器,解释器负责将字节码文件加载到内存,然后采用解释方式执行字节码文件。

3、在Java语言的简单数据类型中,占存储空间最少的数据类型byte.

4、局部变量只能在声明它的方法或者语句块中使用,而且使用之前必须进行赋值。 5、 Java语言共有三种注释,分别是//,/*?*/,/**?*/。

6、Java程序必须经过编译,再经过虚拟机才能执行。通过编译器,Java语言源程序转换成与平台无关的中间编码,Java称之为字节码。字节码再经过解释器的解释,转换为机器码,便可在计算机上运行。任何可以运行Java字节码的程序都可以看成是 ,如浏览器和Java的开发工具等都可以看成是JVM的一部分。

7、在Java语言中,如果赋值运算符=两边的操作数类型不一致,并且左边操作数类型的优先级低于右边操作数类型的优先级,则需要对右边操作数进行强制转换。 8、 编译 .java文件使用的命令是javac。

9、抽象类体中,可以包含抽象方法,也可以不包含抽象方法,但类体包含抽象方法的类必

须要声明为抽象类。抽象类不能实例化,即使抽象类中没有声明抽象方法,也不能实例 化。

10、画线的语句应该修改为static int var=100; ,程序才能通过编译运行 class MyClass{ int var=100; static int getVal(){ return var; }

}

11、 83 % 9 的值是2。

12、构造方法仅用于实例化对象,对成员变量进行初始化;成员方法用于对变量进行多种操作。子类对父类的私有成员没有访问权限,子类对父类的成员变量和成员方法具有访问权限。

子类虽然继承了父类的成员变量和成员方法,但并不是对父类所有成员变量和成员方法 都具有访问权限,即并不是在自己声明的方法中能够访问父类所有成员变量或成员方法。 13、Java中采用接口降低程序的复杂性,提高编程效率,只要是因为它使代码可重用。 14、接口可以看成是仅容纳抽象方法、常量,而又不能直接生成对象的特殊抽象类。 15、 BorderLayout布局类的所在类包是java.awt。

16、在Java中,所有的类都是通过直接或间接地继承java.lang.Object得到的。 17、 监听按扭被按下事件的监听器是ActionListener。

18、在求解运算速度要求不高,但是要求程序简洁的问题时,通常采用 结构。 19、new是实例化对象的操作符。

30、Java使用16位的Unicode字符集,因此,Java字符是一个16位的无符号整数。 31、 抛出异常的关键字是throw和throws。 32、Java的浮点类型包括double和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、 在异常处理中总是将可能产生异常的语句放在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、 即使一个类中未显式定义构造函数,也会有一个缺省的构造函数,缺省的构造函数是无参函数,函数体为空(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中类是单一继承性,而接口是多继承性(T)。

19、 因为Java不支持多继承,所以定义类时implements关键字后面只能说明一个接口名(F)

20、接口中定义的数据字段一定是常量(T)。

四、简答题

1、在右边的矩形框中写出该程序运行的结果。

public class Test

{ public static void main(String[] args) { ClassB cb1=new ClassB(1); ClassB cb2=new ClassB(1);

if(cb1.x==cb2.x){ System.out.println(\ else{ System.out.println(\ } }

class ClassB { int x;

ClassB(int x){this.x=x; } }

答案:cb1==cb2

2、将下面的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 class Test{

public static void main(String[] args){ subclass subW=new subclass(); subW.doPrint(); } }

class superClass{ int x;

superClass(){ x=3;

System.out.println(\+x); }

void doPoint(){} }

class subclass extends superClass{ int x; subclass(){