.
Java期末复习题 一、选择题:
1、所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是 (B)
A. 类 B. 对象 C. 函数体 D. 数据块
2、定义一个不能被继承的名为Abc的类的正确方法是(E)
A.class Abc{} B.native class Abc{}
C.abstract final class Abc{} D.class Abc{final;} E.final class Abc{} 3、若要生成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. 对象时 D. 构造函数时
5、编译运行下面程序时有何种结果?请选择一个正确的答案(A) class Test{
public static void main(){ System.out.println(\ } }
A.程序不能编译,因为main()方法定义不正确。
B.程序能编译,但不能运行,因为class未声明为public的。 C.程序能无错地编译并运行,但运行时将产生异常。 D.程序运行时显示“hello”。
6、关于抽象方法的说确的一项是(A) A、可以有方法体 B、可以出现在非抽象类中 C、抽象方法是没有方法体的方法 D、抽象类中的方法都是抽象方法
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 int[length];
for(int index=0;index A.因为int[]数组声明不正确,程序不能被编译。 B.程序被编译,但在运行时将抛出一个ArrayIndexOutOfBoundsException异常。 C.程序将显示数字0到99,然后将抛出一个ArrayIndexOutOfBoundsException异常。 D.程序被编译,但println()方法将抛出一个NoSuchMethodException异常。 Word资料 . E.程序正常运行,并显示100个0。 9、下列关于接口的说确的是哪一项(D) A.接口与抽象类是相通的概念 B.实现一个接口必须实现 接口的所有方法 C.接口之间不能有继承关系 D.一个类可实现多个接口 10、 实现运行时的多态性用(A) A.重载方法 B.构造方法 C.非重载方法 D.抽象方法 11、哪一种布局管理器是从上到下、从左到右安排组件,当移动到下一行时是居中的(B) A.BorderLayout B.FlowLayout C.GridLayout D.CardLayout E.GridBagLayout 12、下列对继承的说确的一项是(B) A.子类能继承父类的所有方法和状态 B.子类能继承父类的非私有方法和状态 C.子类只能继承父类的public方法和状态 D.子类只能继承父类的方法,而不能继承状态 13、 Java语言中,如果你有下面的类定义: abstract class Shape { abstract void draw(); } class Square extends Shape{ } 如果你试图编译上面的代码会发生(B)。 A. 一切成功编译 B. Shape可以编译Square不能编译 C. Square可以编译Shape不能编译 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=new int[5]; for(int count=0;count <=5;count++) System.out.println(my_Array[count]); 以上Java代码运行的结果是(d)。 A. 将1,2,3,4,5输出到屏幕 B. 将0,1,2,3,4输出到屏幕 C.将0,1,2,3,4,5输出到屏幕 D.将出现运行时异常 17、给出如下代码: class Test{ private int m; public static void fun() { Word资料 . // some code... } } 如何使成员变量m 被函数fun()直接访问?(C) A、将private int m 改为protected int m B、将private int m 改为 public int m C、将private int m 改为 static int m D、将private int m 改为 int m 18、下面对形参的说法中哪一项是正确的(C) A.必须有两个 B.至少有一个 C.可以没有 D.至少有两个 19、在JAVA编程中,Java编译器会将java程序转换为(A)。 A. 字节码 B.可执行代码 C.机器代码 D.以上所有选项都不正确 20、下面的表达式中正确的是( b ) A.String s=″你好″;int 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 B.java C.appletviewer D.以上所有选项都不正确 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 B.protected C.public D.final 26、下面哪个修饰符修饰的方法只能被本类中的其他方法使用(C) A、protected B、static C、private D、public 27、关于对象成员占用存的说法哪一项是正确(B) A.同一个类的对象公用一段存 B.同一个类的对象使用不同的存段,但静态成员共享相同的存空间 C.对象的方法不占用存 D.以上说法都不对 28、 JAVA中,类Worker是类Person的子类,Worker的构造方法中有一句“super()”,该语句(C)。 A.调用类Worker中定义的super( )方法 B. 调用类Person中定义的super( )方法 Word资料 . C. 调用类Person的构造函数 D. 语法错误 29、当方法遇到异常又不知如何处理时,下列哪种说法是正确的(B) A.捕获异常 B.抛出异常 C.声明异常 D.嵌套异常 30、执行下面的赋值语句后,a的值为(B) A=Float.valueOf(“12.34”).floatValue(); A.a=”12.34” B.a=12.34 C.a=1234 D.a=12 31、JAVA语言中,下面关于类的描述正确的是(B)。 A.一个子类可以有多个父类 B. 一个父类可以有多个子类 C.子类可以使用父类的所有 D. 子类一定比父类有更多的成员方法 32、下列符号中不能作为Java标识符的是(C) A.条件 B.xyz C.45six D.ω 33、下列关于一个二维的整型数组的定义,不正确的是(A) A.int a[10][10]=new int[][]; B.int[]a[]=new int[10][10]; C.int[][]a=new int[10][10]; D.int a[][]=new int[10][10]; 34、JAVA是一种完全面向(B)的语言。 A. 过程 B.对象 C.组件 D.服务 35、下列哪些不是Java的关键字(B) A.extends B.open C.class D.if E.import 36、定义一个表示20个值为null的字符串数组,下面选项正确的是(D)。 A、String[] a; B、String a[]; C、char a[20][]; D、String a[]=new String[20]; 37、JAVA中,实现继承的关键字是(C)。 A. Public B.class C.extends D.implements 38、在Java语言中,整型常数123占用的存储字节数是(C) A.1 B.2 C.4 D.8 39、设x=1、y=2和z=3,者表达式y+=z--/++x的值是(b) A.3 B.3.5 C.4 D.4.5 40、 application中的主类需包含main方法,main方法的返回类型是(D)。 A.int B.float C.double D.void 41、在Java语言中,'\A'在存中占用的字节数是(D) A.2 B.4 C.6 D.8 42、应用程序中的main()方法返回的类型是(A) A.void B.String C.char D.int 43、下程序片段,不能插入到第1行的是(b)。 1. 2. class A{ 3. //do sth 4. } A.public class MainClass{ } B.int x=1; C.class ANotherClass{ } D.import java.util.*; 44、下面可作为public void aMethod( ){...}重载方法的是(C)。 A.void aMethod( ){...} B.public int aMethod(){...} Word资料 . C.public void aMethod ( ){...} D.public int aMethod ( int 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 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( ) Word资料