java复习题范围(学生)

更新时间:2023-09-25 19:12:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

选择题:

1.System.out.println(\的输出结果应该是( A )。 A. 52 B. 7 C. 2 D. 5

2.下列关于构造函数的句子中,正确的是( D )。 A.定义类类型时,其构造函数不可省略 B.类的构造函数不必与类名相同

C.一个类类型,只能定义一个构造函数

D.在用new运算符生成类的一个对象时,构造函数被调用执行 3.下面对继承的说法,正确的是( A )。 A.子类能继承父类的所有方法和状态 B.子类能继承父类的非私有方法和状态 C.子类只能继承父类的public方法和状态 D.子类只能继承父类的方法,而不继承状态

4.在Java中用什么关键字修饰的方法可以直接通过类名来调用?( A ) A. static B. final C. private D. void 5.以下哪个不是Java的关键字?( A )。

A.FALSE B.throw C.this D.void

6.在Java中,已定义两个接口B和C,要定义一个实现这两个接口的类,以下语句正确的是( C )。

A. interface A extends B,C B. interface A implements B,C C. class A implements B,C

D. class A implements B, implements C

7.以下有关构造方法的说法,正确的是:( A )。 A.一个类的构造方法可以有多个 B.构造方法在类定义时被调用

C.构造方法只能由对象中的其它方法调用。 D.构造方法可以和类同名,也可以和类名不同

8.如果希望某个变量只可以被类本身访问和调用,则应该使用下列哪一种访问控制修饰( A )。

A. private B. protected C. private protected D. public 9.下列标识符不合法的是( C )。 A.%portB.thisC.int D.myCount

10.以下哪项是接口的正确定义?( D ) A. interface B

{ void print() { } ;} B. abstract interface B

{ void print() ;}

C. abstract interface B extends A1,A2 //A1、A2为已定义的接口

{ abstract void print(){ };} D. interface B

{ void print();}

11.下面语句在编译时不会出现警告或错误的是(A)。

A.float f=3.14; B. char c=\ C. Boolean b=null; D. int i=10.0;

1

12.Java 类可以作为(C)。

A. 类型定义机制 B. 数据封装机制

C. 类型定义机制和数据封装机制 D. 上述都不对 13.整型数据类型中,需要内存空间最少的是( D )。 A. shortB. longC. intD.byte

14.布尔型变量真值表示为( A )。 A.true B.false C.t D.f

15.执行完以下代码int [ ] x = new int[10];后,以下哪项说明是正确的( A )。 A. x[9]为0 B. x[9]未定义 C. x[10]为0 D. x[0]为空

16.在Java的异常处理模型中,无论是否发生异常,( B )块中的代码都会被执行。 A. try B.finally C. catch D. throw

17.设x为int型变量、则执行以下语句以后,x的值为(B )。 x=10; x+=x-=x-x

A.10 B.20 C.40 D.30 x+=x-=0

再计算x-=0 x=10 x+=10 x最后为20

18.设有对象x具有属性a则访问该属性的方法为( C )。 A.a.x B.a.x() C.x.a D.x.a() 19.Java 类可以作为( C )。

A. 类型定义机制 B. 数据封装机制

C. 类型定义机制和数据封装机制 D. 上述都不对 20.continue语句( C )。

A.只中断最内层的循环 B.只中断最外层的循环

C.只中断所在层循环中的当次循环 D.只中断某一层的循环 21.假设现在有一个“Test.java”源文件,编译完成后运行该程序,则可能的命令是( A ) A. javac Test.java B. java Test C. javac Test D. javac Test.java 22.在Java中,\属于(A)类的对象。

A. int B. String C. Integer D. Number

23.下面哪一行代码正确地声明了一个类方法(静态方法)?( C ) A. public int method(int i) B. protected method(int i)

C. public static method(String s)

D. protected static void method(Integer i)

24.有以下方法的定义,请选择该方法的返回类型( B )。 ReturnType method(byte x, double y) { return (short)x/y*2; }

A. byte B. short C. int D. double

25.下列哪一个关键字用于实现接口来定义类?( D ) A. extends B. implements C. abstract D. interface

26.执行完以下代码int [ ] x = new int[10];后,以下哪项说明是正确的(A)。 A. x[9]为0 B. x[9]未定义 C. x[10]为0 D. x[0]为空

2

27.下列选项中,不属于Java语言的关键字的是( B )。 A. import B.malloc C. extends D. new 28.下述概念中不属于面向对象方法的是( B )。

A. 对象、消息 B. 继承、多态 C. 类、封装 D. 过程调用 29.整型数据类型中,需要内存空间最少的是(D)。 A. short B. long C. int D. byte

30.下面哪一个是合法的数组声明和构造语句( C )。 A. int[] grade = [100];B. int grade = new int[100];

C. int[] grade = new int[100]; D. int() grade = new int(100); 31.下面不是合法标识符的是( A )。 A.9ofBS B. toMesC. whereQuizD. $d1999_

32.关于被私有访问控制符private修饰的成员变量,以下说法正确的是( C )。 A. 可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类

B. 可以被两种类访问和引用:该类本身、该类的所有子类 C. 只能被该类自身所访问和修改 D. 只能被同一个包中的类访问

33.下面声明数组的写法错误( A )。

A. int a[ ]; B. int[ ] a; C. int[3][ ] a; D. int[ ][3] a; 34.以下声明合法的是( C )。

A. default String s B. public final static native int w( )

C. abstract double d D. abstract final double hyperbolicCosine( ) 35.下面关于数组声明和初始化的语句那个有语法错误?( B ) A. int a1[]={3,4,5};

B. String a2[]={\ C. String a3[]=new String(3); D. int[][] a4=new int[3][3];

36.为了使包ch4在当前程序中可见,可以使用的语句是( B )。 A.import ch4.*; B.package ch4.*; C.ch4 import; D.ch4 package;

37.下列哪一种叙述是正确的(B )。 A. abstract修饰符可修饰字段、方法和类

B. 抽象方法的body部分必须用一对大括号{ }包住 C. 声明抽象方法不可写出大括号 D. 声明抽象方法,大括号可有可无 38.类与对象的关系是( C )。

A.对象是类的子类 B.对象是类的抽象

C.类是对象的抽象 D.类是对象的具体实例 39.以下哪个不是Java的原始数据类型( B )。 A.intB.BooleanC.floatD.char

40.以下关于继承的叙述正确的是(A)。 A. 在Java中类只允许单一继承

B. 在Java中一个类只能实现一个接口

C. 在Java中一个类不能同时继承一个类和实现一个接口 D. 在Java中接口只允许单一继承

3

41.下面哪个是非法的( D )。

A.int I = 32; B.float f = 45.0f; C.double d = 45.0;D.char c =‘u’;

42.下列哪个类的声明是正确的?( D )

A. abstract final class HI{} B. abstract private move(){} C. protected private number; D. public abstract class Car{}

43.在使用interface声明一个接口时,只可以使用( D )修饰符修饰该接口。 A. private B. protected C. private protected D.public 44.下列不可作为Java语言修饰符的是(D)。 A. ab2 B. $a2 C. _a2 D.2a2 45.Java中( C )。

A. 一个子类可以有多个父类,一个父类也可以有多个子类 B. 一个子类可以有多个父类,但一个父类只可以有一个子类 C. 一个子类可以有一个父类,但一个父类可以有多个子类 D. 上述说法都不对

46.在调用方法时,若要使方法改变实参的值,可以( B )。 A. 用基本数据类型作为参数 B. 用对象作为参数 C. A和B都对 D. A和B都不对

47.下面哪个函数是public void example(){...}的重载函数?( B ) A.public void example( int m){...} B.public int example(){...} C.public void example2(){...}

D.public int example ( int m, float f){...}

48.下面关键字中,哪一个不是用于异常处理语句( B )。 A.try B.break C.catch D.finally

49.A派生出子类B,B派生出子类C,并且在Java源代码中有如下声明:

1) A a0=new A(); 2) A a1 =new B(); 3) A a2=new C();

问以下哪个说法是正确的?

A. 只有第1行能通过编译(D)。

B. 第1、2行能通过编译,但第3行编译出错

C. 第1、2、3行能通过编译,但第2、3行运行时出错 D. 第1行、第2行和第3行的声明都是正确的 50.下列关于构造方法的叙述中,错误的是(C)。 A. Java语言规定构造方法名与类名必须相同

B. Java语言规定构造方法没有返回值,但不用void声明 C. Java语言规定构造方法不可以重载

D. Java语言规定构造方法只能通过new自动调用 51.下列哪个是合法的Java标识符?( D )

A. Tree&Glasses B. FirstJavaApplet C. *theLastOne D. 273.5 52.编译Java程序的命令是:( B )。

A. appletviewer B. javac C. java D. javadoc 53.下列那个是反斜杠的正确表示?( A ) A.\\\\ B.*\\\\ C.\\' D.\\'\\'

4

54.下列哪些语句关于Java内存回收的说明是正确的? ( C )。 A. 程序员必须创建一个线程来释放内存 B. 内存回收程序负责释放无用内存

C. 内存回收程序允许程序员直接释放内存

D. 内存回收程序可以在指定的时间释放内存对象

55.结构化程序设计所规定的三种基本控制结构是 ( C )。 A. 输入、处理、输出 B.树形、网形、环形

C.顺序、选择、循环 D.主程序、子程序、函数 56.提供Java存取数据库能力的包是( A )。

A. java.sql B. java.awt C. java.lang D. java.swing

57.下列方法头中哪一个不与其他方法形成重载(overload)关系? ( D ) A. void mmm() B. void mmm(int i) C. void mmm(String s) D. int mm() 58.不能构成循环的语句是( C )。 A.for 语句 B.while 语句

C.switch 语句 D.do__while 语句 59.Java编程所必须的默认引用包为(D)。

A. java.sys包 B. java.lang包 C. java.util包 D.以上都不是 60.Java语言中创建一个对象使用的关键字为(C)。 A.class B.interface C.new D.create

61.执行语句int i = 1, j = ++i; 后i与j的值分别为( D )。 A. 1与1 B. 2与1 C. 1与2 D. 2与2

++i是先计算i的值,然后再使用这个值,而i++是先使用i,然后再计算i++. 这里是先++i得到i=2,然后将2赋给j,所以i和j都是2.

62.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 63.以下哪个约束符可用于定义成员常量?( B )

A. staticB. final C. abstract D. No modifier can be used 64.在类的定义中构造函数的作用是( D )。 A.保护成员变量 B.读取类的成员变量 C.描述类的特征 D.初始化成员变量

65.设有定义 int i = 6 ;,则执行以下语句后,i 的值为( C )。

i += i - 1;

A.10B.121C.11D.100

66.请问所有的异常类皆继承哪一个类?( B )。 A.java.io.Exception B.java.lang.Throwable C.java.lang.Exception D.java.lang.Error

67.MAX_LENGTH是int型public成员变量, 变量值保持为常量100,用简短语句定义这个变量。( C )

A.public int MAX_LENGTH=100; B.final int MAX_LENGTH=100; C.final public int MAX_LENGTH=100; D.public final int MAX_LENGTH=100;

68.下面哪一个是Java中不合法的标识符( D )。

5

A.$personsB.twoNum C._myVar D.*point 69.以下关于构造函数的描述错误的是(A)。 A. 构造函数的返回类型只能是void型。

B. 构造函数是类的一种特殊函数,它的方法名必须与类名相同。 C. 构造函数的主要作用是完成对类的对象的初始化工作。 D. 一般在创建新对象时,系统会自动调用构造函数。 70.在创建对象时必须( C )。 A. 先声明对象,然后才能使用对象

B. 先声明对象,为对象分配内存空间,然后才能使用对象

C. 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象 D. 上述说法都对

71.若在某一个类定义中定义有如下的方法:abstract void performDial( );该方法属于( C )。

A. 接口方法 B. 最终方法 C. 抽象方法 D. 空方法

72.对于一个Java源文件,import, class定义以及package正确的顺序是( A )。 A.package,import,class B.class,import,package C.import,package,class D.package,class,import 73.关于Java中数据类型叙述正确的是:( B )。 A.整型数据在不同平台下长度不同

B.boolean类型数据只有2个值,true和false C.数组属于简单数据类型

D.Java中的指针类型和C语言的一样 74.哪个关键字可以抛出异常?( C )

A.transient B.finally C.throw D.static 75.若需要定义一个类域或类方法,应使用哪种修饰符?(A) A. static B. package C. private D. public 76.下面说法不正确的是( C )。

A. 一个子类的对象可以接收父类对象能接收的消息

B. 当子类对象和父类对象能接收同样的消息时,它们针对消息产生的行为可能不同 C. 父类比它的子类的方法更多

D. 子类在构造函数中可以使用super( )来调用父类的构造函数 77.main方法是Java应用程序执行的入口点,关于main方法的方法头以下哪项是合法的?(B)

A. public static void main()

B. public static void main( String[] args) C. public static int main(String [] arg) D. public void main(String arg[]) 78.Java语言的类间的继承关系是( B )。

A.多重的 B.单重的 C.线程的 D.不能继承 79.关于类和对象的叙述正确的是:( A )。

A.Java的类分为两大部分:系统定义的类和用户自定义的类 B.类的静态属性和全局变量的概念完全一样,只是表达形式不同 C.类的成员至少有一个属性和一个方法 D.类是对象的实例化

80.类与对象的关系是( A )。

6

A.类是对象的抽象 B.对象是类的抽象 C.对象是类的子类 D.类是对象的具体实例

81.有一段java 应用程序,它的主类名是a1,那么保存它的源文件名可以是( A )。 A. a1.java B. a1.class C. a1 D. 都对 82.定义类头时能使用的修饰符是( C )。 A.privateB.staticC.abstractD.protected

83.在编写JavaApplet程序时,需在程序的开头写上( B )语句。 A.import java.awt.* ;B.import java.applet.Applet ; C.import java.io.* ;D.import java.awt.Graphics ;

84.声明一个类的方法是最终的,即不能被其子类覆盖该方法,应使用( D )修饰符。 A.abstract B.public C.protected D.final 85.以下由 for 语句构成的循环执行的次数是( B )。 for ( int i = 0; true ; i++) ;

A.有语法错,不能执行 B.无限次 C.执行1次 D.一次也不执行 86.下列叙述正确的是( A )。

A.在类中的构造方法的名字与类的名字相同,而且有返回类型 B.在类中的构造方法的名字与类的名字相同,而且不能重载 C.在类中的构造方法的名字与类的名字相同,但没有返回类型 D.在类中的构造方法的名字与类的名字相同,而且不能初始化

87.Java application中的主类需包含main方法,main方法的返回类型是什么?( A )。 A. int B. float C. double D. void

88.给出下面代码,关于该程序以下哪个说法是正确的?( C ) public class Person{

static int arr[] = new int[5];

public static void main(String a[]) { System.out.println(arr[0]);} } }

A. 编译时将产生错误 B. 编译时正确,运行时将产生错误 C. 输出零 D. 输出空

89.若a的值为3时,下列程序段被执行后,c的值是多少?( C ) if ( a>0 )

if ( a>3 ) c = 2; else c = 3; else c = 4;

A. 1 B. 2 C. 3 D. 4 90.for(;;)是( A )。

A.循环结构 B.分支结构 C.顺序结构

7

简答题

1. Java的实例方法和静态(类)方法的区别?

在外部调用静态方法时,可以使用\类名.方法名\的方式,也可以使用\对象名.方法名\的方式。 实例方法只有使用\对象名.方法名\的方式。也就是说,调用静态方法可以无需创建对象。静态方法在访问本类的成员时,只允许访问静态成员(即静态成员变量和静态方法),而不允许访问实例成员变量和实例方法。实例方法允许访问静态成员(即静态成员变量和静态方法)和实例成员变量和实例方法。

2.在什么情况下需要使用super和this关键字? 3.Java的构造方法和实例方法的区别? 4.Java中命名标识符有什么规则?

由26个英文字母大小写,数字:0-9 符号:_ $ 组成 ? 标识符应以字母、_ 、$开头。 ? 标识符不能是关键字。 ? Java中严格区分大小写

?

5.Java的接口和抽象类的有哪些相同?哪些不同? 6.基本数据类型和对象作为参数传递有何不同? 7.Java的访问控制符有哪些?各有什么作用? 8.Java平台分为几类,它们的适用范围是什么? 9.Java语言有哪8种简单的数据类型?

布尔数据类型 (boolean) 1 位 字符类型 (char) 2 字节

整数类型 (integer) byte 1 字节 short 2 字节 int 4 字节 long 8 字节

浮点数类型 (float) float 4 字节 double 8 字节

8

本文来源:https://www.bwwdw.com/article/ppnd.html

Top