大一Java复习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、熟练掌握以下基本基本概念:

1.Java虚拟机

2.类和对象、封装

3.构造方法

4.继承

5.接口

6.多态性

7.方法重载和方法重写

8.抽象类

9.异常

二、单选题

1. Java具有跨平台的特点,负责解释和执行字节码文件的是(B)。

A)垃圾自动回收器B)Java虚拟机

C)Java编译器D)多线程机制

2. Java中的数据类型分为基本类型和引用类型,下面哪个类型不属于引用类型

( C )?

A)int[] B)Integer C)char D)String

3.下面哪个赋值语句是错误的?( B )

A)int i = 100; B)float f = 100.0;

C)String s = “Hello world”; D)char c = ‘\123’;

4.关于类和对象的叙述正确的是( A )。

A)Java中的类分为两大部分:系统定义的类和用户自定义的类

B)类的静态属性和全局变量的概念完全一样,只是表达形式不同

C)一个类至少要有一个属性和一个方法

D)类是对象的实例化

5.下列关键字中可作为类的修饰符是( C )。

A) private B) static C) abstract D) protected

6. 设B为已定义的类名,下面声明类B的对象b的语句中正确的是( D )。

A) float B b; B) public B b=B();

C) B b=new int(); D) B b=new B();

7. Object类在哪个包中? ( D )

A) java.util B) java.io C) java.awt D) ng

8.在异常处理时,释放资源、关闭文件或关闭数据库等的操作一般是在( C )部分中完成。

A)try子句 B)catch子句

C)finally子句 D)throw子句

9. 下面哪一项不是合法的Java程序注释?( C )

A)/** comment */ B)/* comment */

C)/* comment D)// comment

10.设有下面两个类的定义:

class Door { class House {

//……Door door;

} //……

}

则类Door和类House间的关系是( A )。

A)包含关系 B)继承关系

C)定义错误 D)实现关系

11.设有下面两个类的定义:

class Animal { class Dog extends Animal {

//……//……

} }

则类Animal和类Dog之间的关系是( B )。

A)包含关系 B)继承关系

C)定义错误 D)实现关系

12.给出下列代码,如何使成员变量m能被方法fun直接访问?( C )

class Test

{ private int m;

public static void fun(){//… }

}

A) 将private int m 改为protected int m

B) 将private int m 改为public int m

C) 将private int m 改为static private int m

D) 不用修改就可直接访问

13. 设IntA是一个接口,SubA类是一个实现了IntA的类,下列哪个实例创建语句是正确的?( D )

A)SubA s1=new IntA();B) SubA s1=new Object();

C) IntA a1=new IntA();D)IntA a1=new SubA();

14. 给出下面的代码

class Person {

String name,department;

public void printValue(){

System.out.println("name is "+name);

System.out.println("department is "+department);

}

}

public class Teacher extends Person {

int salary;

public void printValue(){

// 完成父类代码中printValue()相同的工作

System.out.println("salary is "+salary);

}

}

下面的哪个表达式可以加入到注释部分的横线处? ( D )

A. printValue();

B. this.printValue();

C. person.printValue();

D. super.printValue();

15. 为了区分重载多态中同名的不同方法,要求( A )。

A)采用不同的形式参数列表B) 返回值类型不同

C)调用时用类名或对象名做前缀D) 参数名不同

16.已知:

class C {

public static void a() {/*代码*/} //本题要求掌握static关键字的使用public void b() {/*代码*/}

}

下面说法正确的是 C

(A)因为方法a和方法在同一个类中,所以它们可以互相直接调用

(B)可以在方法b的代码中调用C.b()

(C)可以在方法b的代码中调用a()

(D)可以在方法a的代码中调用b()

三、多选题

1.下面的哪些声明是合法的?AC

(A)int a[]; (B)int a[5];

(C)int[] a; (D)int a[] = [5];

2.已知:

interface I {

void ma();

void mb();

void mc(); }

class Base {

public void ma(){}

}

class Derived extends Base implements I {

__ ________ }

要使Derived通过编译,在划线处至少需要添加下面哪些语句 ( CD )

A)public void ma() { }

B)void ma() { }

C)public void mb() { }

D)public void mc() { }

3. 对于构造函数,下列叙述正确的是(ACD)。

A)构造函数是类的一种特殊函数,它的方法名必须与类名相同

B)构造函数的返回类型只能是void型。

C)构造函数的主要作用是完成对类的对象的初始化工作。

D)构造函数只能在创建对象时由new调用。

E)构造函数不能重载。

4. 下列描叙正确的是(BD )。

A)在类体中定义的变量称为类的成员变量,在别的类中可以直接使用。

B)局部变量的作用范围仅仅在定义它的方法内,或者是在定义它的程序块中,局部变量在使用前必须被初始化。

C)使用其他类中的方法仅仅需要引用方法的名字即可。

D)一个类的方法使用该类中的另一个方法时可以直接通过方法名引用。

E) 子类可以继承父类的所有成员。

5. 下列哪些选项的java源文件代码片段是正确的?(AD )

相关文档
最新文档