JAVA面向对象基础测试题继承封装多态等测试题.docx

上传人:b****6 文档编号:5551755 上传时间:2022-12-19 格式:DOCX 页数:18 大小:17.43KB
下载 相关 举报
JAVA面向对象基础测试题继承封装多态等测试题.docx_第1页
第1页 / 共18页
JAVA面向对象基础测试题继承封装多态等测试题.docx_第2页
第2页 / 共18页
JAVA面向对象基础测试题继承封装多态等测试题.docx_第3页
第3页 / 共18页
JAVA面向对象基础测试题继承封装多态等测试题.docx_第4页
第4页 / 共18页
JAVA面向对象基础测试题继承封装多态等测试题.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

JAVA面向对象基础测试题继承封装多态等测试题.docx

《JAVA面向对象基础测试题继承封装多态等测试题.docx》由会员分享,可在线阅读,更多相关《JAVA面向对象基础测试题继承封装多态等测试题.docx(18页珍藏版)》请在冰豆网上搜索。

JAVA面向对象基础测试题继承封装多态等测试题.docx

JAVA面向对象基础测试题继承封装多态等测试题

JAVA面向对象基础测试题

提示:

本题为第一阶段,JAVA面向对象基础部分练习题,包括对象,类,继承,封装,多态,接口,内部类等等,java核心基础,适合初学者对面向对象基础的知识进行测试,以便查漏补缺。

1.

程序执行的结果是:

()。

01

publicclassPoint{

02

inty=7;

03

publicvoidstep(inty){

04

y+=y;

05

System.out.println(y);

06

}

07

publicstaticvoidmain(String[]args){

08

Pointp=newPoint();

09

p.step(10);

10

}

11

}

A.14

B.20

C.10

D.17

正确答案:

B解析:

2.

程序的执行结果是:

()。

01

publicclassQuestion{

02

privateintnum;

03

publicstaticvoidmain(String[]args){

04

Questionq=newQuestion();

05

q.num=13;

06

update(q);

07

System.out.println(q.num);

08

}

09

publicstaticvoidupdate(Questionq){

10

q.num=9;

11

}

12

}

A.13

B.9

C.0

D.4

正确答案:

B解析:

3.

程序执行的结果是:

()。

01

publicclassAnswer{

02

publicstaticvoidmain(String[]args){

03

intscore=20;

04

Answerans=newAnswer();

05

ans.add(score);

06

System.out.println("main:

score="+score);

07

}

08

voidadd(intscore){

09

System.out.println("add:

score="+score++);

10

}

11

}

A.

1

add:

score=21

2

main:

score=21

B.

1

add:

score=20

2

main:

score=21

C.

1

add:

score=21

2

main:

score=20

D.

1

add:

score=20

2

main:

score=20

正确答案:

D解析:

4.

下列代码编译或运行的结果是:

()。

01

publicclassSnow{

02

publicStringjump(intx,inty){

03

return"jumpone";

04

}

05

publicStringjump(int[]vals){

06

return"jumptwo";

07

}

08

publicstaticvoidmain(String[]args){

09

Snows=newSnow();

10

System.out.println(s.jump(4,5));

11

}

12

}

A.publicStringjump(int[]vals){行,编译出错

B.System.out.println(s.jump(4,5));行,抛出运行时异常

C.输出:

jumpone

D.输出:

jumptwo

正确答案:

C解析:

5.

关于下列代码说法正确的是:

()。

01

publicclassStorm{

02

publicvoidfind(){

03

}

04

publicStringfind(){

05

return"find";

06

}

07

publicdoublefind(intx){

08

return2.0;

09

}

10

}

A.无编译错误

B.代码publicStringfind(){行,出现编译错误

C.代码publicdoublefind(intx){行,出现编译错误

D.代码return"find";行处出现编译错误

正确答案:

B解析:

6.

请看下列代码:

01

classClassA{}

02

classClassBextendsClassA{}

03

classClassCextendsClassA{}

04

publicclassTest{

05

publicstaticvoidmain(String[]args){

06

ClassAp0=newClassA();

07

ClassBp1=newClassB();

08

ClassCp2=newClassC();

09

ClassAp3=newClassB();

10

ClassAp4=newClassC();

11

<插入代码>

12

}

13

}

下列选项中放置在<插入代码>处,使程序编译正确的是:

()。

A.p0=p1;

B.p1=p2;

C.p2=p4;

D.p2=(ClassC)p1;

正确答案:

A解析:

7.

下列代码的运行结果是:

()。

01

publicclassAnimal{

02

publicStringnoise(){

03

return"Animal";

04

}

05

publicstaticvoidmain(String[]args){

06

Catcat=null;

07

Animalanimal=newDog();

08

if(animalinstanceofCat){

09

cat=(Cat)animal;

10

System.out.println(cat.noise());

11

}else{

12

System.out.println("animalisnotCat'sinstance");

13

}

14

}

15

}

16

classDogextendsAnimal{

17

publicStringnoise(){

18

return"Dog";

19

}

20

}

21

classCatextendsAnimal{

22

publicStringnoise(){

23

return"Cat";

24

}

25

}

A.Animal

B.Dog

C.Cat

D.animalisnotCat'sinstance

正确答案:

D解析:

8.

请看下列代码编译和运行的结果是:

()。

1

publicclassTeacher{

2

privateStringname="sun";

3

publicstaticvoidmain(String[]args){

4

Teacher[]teachers=newTeacher[2];

5

System.out.println(teachers[0].name);

6

System.out.println(teachers.length);

7

}

8

}

A.sun2

B.null2

C.null1

D.运行时抛出NullPointerException异常

正确答案:

D解析:

9.

下列代码编译和运行的结果是:

()。

01

classPerson{

02

Stringname="";

03

04

publicPerson(Stringname){

05

this.name=name;

06

}

07

}

08

09

classEmployeeextendsPerson{

10

StringempNO="0000";

11

12

publicEmployee(StringempNO){

13

this.empNO=empNO;

14

}

15

}

16

17

publicclassEmployeeTest{

18

publicstaticvoidmain(String[]args){

19

Employeee=newEmployee("1109");

20

System.out.println(e.empNO);

21

}

22

}

A.输出:

0000

B.输出:

1109

C.代码publicEmployee(StringempNO){行,出现编译错误

D.抛出运行时异常

正确答案:

C解析:

10.

下列代码编译和运行的结果是:

()。

01

classA{

02

publicvoidstart(){

03

System.out.println("AStart");

04

}

05

}

06

publicclassBextendsA{

07

publicvoidstart(){

08

System.out.println("BStart");

09

}

10

publicstaticvoidmain(String[]args){

11

((A)newB()).start();

12

}

13

}

A.输出:

AStart

B.输出:

BStart

C.输出:

AStartBStart

D.编译错误

正确答案:

B解析:

11.

关于下列代码说法正确的是:

()。

01

publicinterfaceA{

02

publicvoiddoSomething(Stringthing);

03

}

04

interfaceB{

05

}

06

interfaceCextendsA,B{

07

}

08

interfaceD{

09

publicvoiddoIt(Stringthing);

10

}

11

classAImplimplementsC,D{

12

publicvoiddoSomething(Stringmsg){}

13

publicvoiddoIt(Stringthing){}

14

}

A.所有类和接口都编译成功

B.接口A编译失败

C.类AImpl编译失败

D.接口C编译失败

正确答案:

A解析:

12.

在Java中,关于final关键字的说法正确的是:

()。

A.如果修饰局部变量,必须定义时初始化

B.如果修饰类,则该类只能被一个子类继承

C.如果修饰方法,则该方法不能在子类中被覆盖

D.如果修饰方法,则该方法所在的类不能被继承

正确答案:

C解析:

13.

关于下列代码说法正确的是:

()。

01

publicclassCell{

02

privatefinalintid;

03

publicCell(intid){

04

this.id=id;

05

}

06

publicvoidupdateId(intid){

07

this.id=id;

08

}

09

publicstaticvoidmain(String[]args){

10

Cellcell=newCell(1001);

11

cell.updateId(1002);

12

System.out.println(cell.id);

13

}

14

}

A.编译错误

B.运行时异常抛出

C.运行后,cell对象属性id的值没有改变,仍然是1001

D.运行后,cell对象属性id的值改变成新的值1002

正确答案:

A解析:

14.

下列选项中,不属于Java的访问控制修饰符的是:

()。

A.private

B.protected

C.friendly

D.public

正确答案:

C解析:

15.

下面关于import,class和package的声明顺序正确的是:

()。

A.package,import,class

B.class,import,package

C.import,package,class

D.package,class,import

正确答案:

A解析:

16.

有一个名为Product的类,下列方法中属于该类的构造方法的是:

()。

A.publicProduct(){}

B.publicProduct(Stringname){}

C.publicvoidProduct(){}

D.publicvoidProduct(Stringname){}

正确答案:

AB解析:

17.

请看下列代码:

1

publicclassTetromino{

2

protectedintmove(intx){

3

return0;

4

}

5

}

6

classTextendsTetromino{

7

<插入代码>

8

}

在<插入代码>处填入选项中的代码,使T类没有编译错误的是:

()。

A.publicintmove(intx){return0;}

B.privateintmove(intx){return0;}

C.privateintmove(longx){return0;}

D.protectedlongmove(intx){return0;}

正确答案:

AC解析:

18.

下列关于JVM的内存结构描述正确的是:

()。

A.类的各种信息在堆中保存

B.栈用于存放程序运行过程当中所有的局部变量

C.堆一般用于存储使用new关键字创建的对象

D.类是JVM的内存结构

正确答案:

BC解析:

19.

请看下列代码:

1

publicclassFoo{

2

staticvoidalpha(){/*morecodehere*/}

3

voidbeta(){/*morecodehere*/}

4

}

下列说法正确的是:

()。

A.Foo.beta()是调用beta方法的正确方式

B.Foo.alpha()是调用alpha方法的正确方式

C.beta方法可以直接调用alpha方法

D.alpha方法可以直接调用beta方法

正确答案:

BC解析:

20.

请看下列代码:

1

publicclassLine{

2

privatePointp;

3

publicLine(){

4

<插入代码>

5

}

6

publicclassPoint{}

7

}

在<插入代码>处,需要创建Point类的对象,下列选项正确的是:

()。

A.super.p=newPoint();

B.p=super.newPoint();

C.p=newPoint();

D.p=this.newPoint();

正确答案:

CD解析:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1