JAVA练习题(面向对象)

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

《JAVA练习题》面向对象

一、判断正误:

1.Java语言为所有的Java程序自动导入包“ng”,因此,Java程序可以直接用

“ng”中的类和接口。位于类继承关系层次结构树的根部的类Object就是在包“ng”中的一个类。

2.有时候为了避免引起混淆,构造方法的方法名可以不与所属类名同名。

3.构造方法一般不允许有任何返回值,因此需要在返回类型处标注为void.

4.任何类都必须显式地定义该类的构造方法,以便对类的成员进行各种初始化操作。

5.运行下面程序将在控制台窗口中输出a。

public class A{

public A ( ){

char c=’a’;}

public static void main(String args[ ]) {

System.out.println( c );}

}

6.如果在定义一个类的时候没有用到关键字extends,则这个类没有直接父类。

7.在同一个类中,不允许存在具有相同方法名和相同参数类型列表的方法,即使该方法

的返回类型不相同。

8.抽象方法不能含有方法体,并且必须在抽象类中。

9.抽象类是不能实例化的,抽象类的实例化,应当通过其不具有抽象属性的子类来创建。

二、填空:

1.填空面名对象的计算机语言一般应具有3个基本特征,分别是__________________。

2.在下面的程序编译之后,按“java A 1 2 3”方式运行的结果是:_______。

public class A {

public static void main(String args[ ]) {

int i;

for(i=0;i

{System.out.println(“args[“+i+”]=”+args[i]+”;”);

}

}

}

3.请按要求完成下面的程序,最终该程序的输出结果是:________。

class A {

public int m;

public A(int d)

{ m=d; }

}

public class B extends A {

public int n;

public B(int ds, int d) {

____________________// 要求将其父类的成员m初始化为ds的值

n=d;

}

public static void main(String args[ ]) {

B s=new B(2,3);

System.out.println(s.n+s.m);

} }

4.下面程序输出的结果是_______。

public class A {

static int m=0;

public int s( ) {

m++;

return m;

}

public static void main(String args[ ]) {

A a=new A( );

A b=new A( );

A c=new A( );

a.s ( );

b.s ( );

c.s ( );

int i=a.s( );

System.out.println(i); }}

三、选择题:

1.对于下面哪些类定义,可以通过“new A( )”生成类“A”的实例对象?

A.

public class A

{

}

B.

public class A

{ public A(void) { }

}

C.

public class A

{public A(String s) { }

D.

public class A

{public void A ( ) { }

public A(String s) { }

2.关于下面程序,哪些结论是正确的?()

public class A {

public A( ) {

System.out.print(“2”);

}

public static void main(String args[ ]) {

A s=new A( );

s.A( );

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

A.程序可以通过编译并正常运行,结果输出“21”。

B.程序可以通过编译并正常运行,结果输出“221”。

C.程序无法通过编译。

D.程序可以通过编译,但无法正常运行。

3. 下面程序的输出是什么?

public class A {

int m=2;

String s=null;

A( )

{ m=3;

s=”constructor”; }

public static void main(String args[ ]) {

A app=new A( );

System.out.println(app.m+app.s);

}}

A.3null

B.3constructor

C.2constructor

D.2null

4. 下面程序的输出是什么?

class A {

int m=2;

String s=null;

void A( )

{ m=3;

s=”constructor”; }

public static void main(String args[ ]) {

A app=new A( );

System.out.println(app.m+app.s);

}}

A.3null

B.3constructor

C.2constructor

D.2null

5.己知字母‘a’和‘b’所对应的数值分别是97和98。关于下面程序代码,哪些选项的结论是正确的?

public class A {

static char name;

static int age;

public static void setData(char n) {

name=n;}

public static void setData(int m) {

age=m;}

public static void main(String args[ ]) {

setData((int)’a’);

setData((char)98);

相关文档
最新文档