《Java面向对象》复习题

专题5 面向对象 一、填空题

1. 如果一个方法不返回任何值,则该方法的返回值类型为 void 。 2. 如果子类中的某个方法名、返回值类型和传递参数与父类中的某个方法完全一致,则称子类中的这个方法覆盖了父类的同名方法。 3. 接口中所有的属性均为公有、静态和常量的。

4. 抽象方法是一种仅有方法声明,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。

5. 在Java程序中,通过类的定义只能实现 单 重继承,但通过 接口 的定义可以实现多重继承关系。

6. 一般Java程序的类主体由两部分组成:一部分是 成员变量(属性),另一部分是 成员方法 (方法) 。

7. 分别用class关键字来定义类,用 new关键字来分配实例存储空间。

8. 当一个类的修饰符为 private 时,说明该类不能被继承,即不能有子类。

二、选择题

1. 方法内定义的变量( B )。

A.一定在方法内所有位置可见 B.可能在方法的局部位置可见 C.在方法外可以使用 D.在方法外可见 4. main()方法的返回值类型是( C )

A.boolean B.int C.void D.static 6. 能作为类及其成员的修饰符是( D )。

A.Interface B.Class C.protected D.public 7. 下列方法定义中,方法头不正确的是( A )。

A.public static x(double a){…} B.public static int x(double y){…} C.void x(double d){…} D.public int x(){…} 8. 构造方法在( D )时被调用。

A.类定义时 B.使用对象的变量时 C.调用对象方法时 D.创建对象时 9. 下列哪个类声明是正确的( A )。

A.public abstract class Car{…} B.abstract private move(){…} C.protected private number; D.abstract final class H1{…} 10. 下列不属于面向对象程序设计的基本特征的是( D )。

A.抽象 B.封装 C.继承 D.静态 13. 有一个类A,对于其构造函数的声明正确的是( B )。 A.void A(int x){ } B.public A(int x){ } C.A A(int x){ } D.int A(int x){ } 14. 请看下面的程序段 public class Test{ long a[]=new long[10];

pubic static void main(String args[]){ System.out.println(a[6]); } } 哪一个选项是正确的( B )。

A.不输出任何内容 B.输出0

C.当编译时有错误出现 D.当运行时有错误出现

15. 关键字( B )表明一个对象或变量在初始化后不能修改。

A.extends B.final C.This D.finalize 16. 声明为static的方法不能访问( C )类成员。

A.超类 B.子类 C.非static D.用户自定义类 17. 定义类A如下:(重要)

class A{ int a,b,c;

public void B(int x,int y, int z){ a=x;b=y;c=z;} } 下面对方法B的重载哪些是正确的( C )。

A.public void A(int x1,int y1, int z1){ a=x1;b=y1;c=z1;} B.public void B(int x1,int y1, int z1){ a=x1;b=y1;c=z1;} C.public void B(int x,int y){ a=x;b=y;c=0;} D.public B(int x,int y, int z){ a=x;b=y;c=z;} 18. 编译运行下面的程序,结果是( B )。(重要)

public class A{

public static void main(String args[]){ B b=new B(); b.test(); } void test(){

System.out.print(“A”); } } class B extends A{ void test(){ super.test();

System.out.print(“B”); } }

A.产生编译错误 行时异常 B.代码可以编译运行,并输出结果:AB C.代码可以编译运行,但没有输出 D.编译没有错误,但会产生运 19. 已知类关系如下: Class Employee{}

Class Manager extends Employee{} Class Director extends Employee{} 则下列语句正确的是:( A )。

A.Employee e=new Manager(); B.Director d=new Manager();

C.Director d =new Employee (); D.Manager m=new Director (); 20. 接口是Java面向对象的实现机制之一,以下说法正确的是( A )。

A.Java支持多重继承,一个类可以实现多个接口 B.Java只支持单重继承,一个类可以实现多个接口 C.Java只支持单重继承,一个类可以实现一个接口 D.Java支持多重继承,但一个类只可以实现一个接口 21.下列方法的声明中不合法的是(C)。

A.float area( ){…} B.void area( ){…} C.area{…} D.int area(int r){…} 23、调用构造方法是在(B)。

A.类定义时 B.创建对象时 C.调用对象的方法时 D.使用对象的变量时 24、在子类构造方法的哪个地方可以调用其父类的构造方法(B)。

A.任何地方 B.构造方法的第一条语句

C.构造方法的最后一条语句 D.无法在子类构造方法中调用父类

26、当方法中的局部变量与成员变量同名时,必须使用下列哪一个关键字指出成员变量(C)。

A.static B.super C.this D.new 27、什么样的方法不能被重写(B )。

A.私有(private)方法 B.最终(final)方法 C.受保护(protected)的方法 D.以上都不对

32、能作为类的修饰符, 也能作为类成员的修饰符的是(A)。

A.Public B.Extends C.Float D.static 34、在JAVA 中,下列说法正确的是:(C)。

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

35、Father和Son是两个java类,下列哪一选项正确的标识出Father是Son的父类?(D)

A.class Son implements Father B.class Father implements Son C.class Father extends Son D.class Son extends Father

36、重载指的是方法具有相同的名字,但这些方法的参数必须不同。下列哪种说法不属于方法参数的不同(C)。

A.形式参数的个数不同。 B.形式参数的类型不同。

C.形式参数的名字不同。 D.形式参数类型的排列顺序不同。 39、关于接口的定义和实现,以下描述正确的是(A)。

A.接口定义的方法只有定义没有实现

B.接口定义中的变量都必须写明final和static

C.如果一个接口由多个类来实现,则这些类在实现该接口中的方法时采用统一的代码

D.如果一个类实现接口,则必须实现该接口中的所有方法,但方法未必申明为public

专题6 字符串、日期时间类 一、填空题 1已知String对象s=”hello”,运行语句

“System.out.println( s.concat(“World!”) );”后,s的值为 hello World!

2.使用+=将字符串s2添加到字符串s1后的语句是 S1+=S2

3.比较s1种的字符串和s2种的字符串的内容是否相等的表达式是: s1.equals(s2)

4.已知sb为StringBuffer的一个实例,且sb=”abcde”,则sb.reverse()后sb的值为: edcba

7、String s1=“China”; int n=s1.length( ); n的值为 5 。

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4