JAVA类与对象及数组习题及答案

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

JA V A类和对象及数组习题

一、选择题

(1)下列构造方法的调用方式中,正确的是( D )--原因:在通过new实例化一个类对象时系统会自动调用该类相应的构造方法。

A.按照一般方法调用B.由用户直接调用

C.只能通过new自动调用D.被系统调用

(2)在Java中,能实现多重继承效果的方式是( C )--原因:一个类可以同时实现多个接口。Java接口反映了对象较高层次的抽象,还弥补了Java只支持单继承的不足,可用它来完成多继承的一些功能。

A.内部类B.适配器C.接口D.同步

(3)int型public成员变量MAX_LENGTH,该值保持为常数100,则定义这个变量的语句是( D )—原因:java中定义常量用关键字final来定义。

A.public int MAX_LENGTH=100 B.final int MAX_LENGTH=100 C.public const int MAX_LENGTH=100 D.public final int MAX_LENGTH=100 (4)下列叙述中,正确的是( A )—原因:Java严格区分大小写,所以变量number 与Number不相同;Java 中的注释方式除了“//”行注释之外还有段注释“/*-------*/”和文档注释/**-------*/。Java源文件中的public类只能有一个。

A. 声明变量时必须指定一个类型

B. Java认为变量number与Number相同

C. Java中唯一的注释方式是"//"

D. 源文件中public类可以有0或多个

(5)下列叙述中,错误的是( D )—原因:子类继承父类,并且可以有自己的成员变量和成员方法。所以可以认为子类是父类的扩展。

A. 父类不能替代子类

B. 子类能够替代父类

C. 子类继承父类

D. 父类包含子类

(6)下列代码中,将引起编译错误的行是( B )—原因:定义float型变量并对其初始化时,其值后面要加一个f.

1)public class Exercise{

2)public static void main(String args[]){

3)float f=0.0;

4) f +=1.0;

5)}

6)}

A. 第2行

B. 第3行

C. 第4行

D. 第6行

(7)下列关于继承的哪项叙述是正确的?( D ) –错误原因:JAVA不允许多重继承,但可以通过接口的机制来达到多重继承的目的;一个类可以同时继承一个类和实现多个接口,但是不能同时继承多个类。

(15)为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。--原因:static修饰的方法又称

为静态方法。静态方法是类方法,它可以直接通过类来调用,也可以通过类实例来调用。

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

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

(16) 不使用static修饰符限定的方法称为对象(或实例)方法,下列哪一个说法是正确的?( D )--原因:A子类实例方法可以直接调用父类的public和protected实例方法,但不能调用父类的private方法。B类方法也称为静态方法,非静态的方法不能调用静态的方法和成员变量,所以无论是父类还是子类的实例方法都不能调用静态方法。C一个类的实例方法只有这个类的其它方法或对象可以调用,不可以由其它类不经过实例化直接调用。

A.实例方法可以直接调用父类的实例方法。

B.实例方法可以直接调用父类的类方法。

C.实例方法可以直接调用其他类的实例方法。

D.实例方法可以直接调用本类的实例方法

(17)设有下面的一个类定义:

class AA { static void Show( ) { System.out.println(“我喜欢Java!”); } }

class BB { void Show( ) { System.out.println(“我喜欢C++!”); }}

若已经使用AA类创建对象a和BB类创建对象b,则下面( A、C )方法调用是正确的–原因:静态方法属于类方法,它可以直接通过类来调用,也可以通过类实例来调用。而非静态的方法则只能通过类实例(对象)来调用。所以AA类的静态show方法即可通过类也可以通过对象来调用,而BB类中的非静态方法show则只能通过对象b来调用。

A. a.Show( ) ; b.Show( )

B. AA.Show( ); BB.Show( );

C. AA.Show( ); b.Show( );

D. a.Show( ); BB.Show( );

(18) 在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为( C )。–原因:同一名称的方法实现不同的功能是面向对象的多态性的表现,该多态性也称为重载。

A.隐藏

B.覆盖

C.重载

D.Java不支持此特性

(19) 对于构造函数,下列叙述不正确的是( C )。–原因:子类可以通过super来调用父类的构造方法。

A.构造函数也允许重载。

B.子类无条件地继承父类的无参构造函数。

C.子类不允许调用父类的构造函数。

D.在同一个类中定义的重载构造函数可以相互调用。

(20) 对于子类的构造函数说明,下列叙述中不正确的是( D )。--原因:子类不可以继承父类的有参构造函数。只能通过super调用。

A.子类无条件地继承父类的无参构造函数。

B.子类可以在自己的构造函数中使用super关键字来调用父类的含参数构造函数,但这个调用语句必须是子类构造函数的第一个可执行语句。

C.在创建子类的对象时,将先执行继承自父类的无参构造函数,然后再执行自己的构造函数。

D.子类不但可以继承父类的无参构造函数,也可以继承父类的有参构造函数。

二、请写出下列程序的运行结果

(1)下列程序的运行结果是( s=120 ) —分析:if语句执行3次,分别是当i=0,3,6时,对应的数组中的数分别为:10,40,70,它们的和为120.

public class Examac

{ public static void main(String args[ ])

相关文档
最新文档