java练习题.docx

上传人:b****0 文档编号:9027979 上传时间:2023-05-16 格式:DOCX 页数:20 大小:18.82KB
下载 相关 举报
java练习题.docx_第1页
第1页 / 共20页
java练习题.docx_第2页
第2页 / 共20页
java练习题.docx_第3页
第3页 / 共20页
java练习题.docx_第4页
第4页 / 共20页
java练习题.docx_第5页
第5页 / 共20页
java练习题.docx_第6页
第6页 / 共20页
java练习题.docx_第7页
第7页 / 共20页
java练习题.docx_第8页
第8页 / 共20页
java练习题.docx_第9页
第9页 / 共20页
java练习题.docx_第10页
第10页 / 共20页
java练习题.docx_第11页
第11页 / 共20页
java练习题.docx_第12页
第12页 / 共20页
java练习题.docx_第13页
第13页 / 共20页
java练习题.docx_第14页
第14页 / 共20页
java练习题.docx_第15页
第15页 / 共20页
java练习题.docx_第16页
第16页 / 共20页
java练习题.docx_第17页
第17页 / 共20页
java练习题.docx_第18页
第18页 / 共20页
java练习题.docx_第19页
第19页 / 共20页
java练习题.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

java练习题.docx

《java练习题.docx》由会员分享,可在线阅读,更多相关《java练习题.docx(20页珍藏版)》请在冰点文库上搜索。

java练习题.docx

java练习题

练习四

2011-12-1717:

22:

13|分类:

JAVA基础学习日记|标签:

|字号大中小订阅

注:

按Java规范书写程序代码,如果你认为程序有错误,请指出,并说明程序错误原因。

1.

写出程序结结果

classDemo

{

publicstaticvoidfunc()//throwsException

{

try

{

thrownewException();

}

finally

{

System.out.println("B");

}

}

publicstaticvoidmain(String[]args)

{

try

{

func();

System.out.println("A");

}

catch(Exceptione)

{

System.out.println("C");

}

System.out.println("D");

}

}

编译失败:

如果func放上声明了该异类。

结果是?

BCD

===========================================

2.

写出程序结果

classTest{

Test(){

System.out.println("Test");

}

}

classDemoextendsTest{

Demo(){

super();

System.out.println("Demo");

}

publicstaticvoidmain(String[]args){

newDemo();

newTest();

}

}

结果:

Test

Demo

Test

考的:

子类的实例化过程。

============================================

3.

写出程序结果

interfaceA{}

classBimplementsA

{

publicStringfunc()

{

return"func";

}

}

classDemo

{

publicstaticvoidmain(String[]args)

{

Aa=newB();

System.out.println(a.func());

}

}

编译失败:

因为A接口中并未定义func方法。

====================================================

4.

写出程序结果

classFu

{

booleanshow(chara)

{

System.out.println(a);

returntrue;

}

}

classDemoextendsFu

{

publicstaticvoidmain(String[]args)

{

inti=0;

Fuf=newDemo();

Demod=newDemo();

for(f.show('A');f.show('B')&&(i<2);f.show('C'))

{

i++;

d.show('D');

}

}

booleanshow(chara)

{

System.out.println(a);

returnfalse;

}

}

结果

AB

=========================================================

5.

写出程序结果

interfaceA{}

classBimplementsA

{

publicStringtest()

{

return"yes";

}

}

classDemo

{

staticAget()

{

returnnewB();

}

publicstaticvoidmain(String[]args)

{

Aa=get();

System.out.println(a.test());

}

}

编译失败,因为A接口中没有定义test方法。

=======================================================

6.

写出程序结果:

classSuper

{

inti=0;

publicSuper(Stringa)

{

System.out.println("A");

i=1;

}

publicSuper()

{

System.out.println("B");

i+=2;

}

}

classDemoextendsSuper

{

publicDemo(Stringa)

{

//super();

System.out.println("C");

i=5;

}

publicstaticvoidmain(String[]args)

{

inti=4;

Superd=newDemo("A");

System.outprintln(d.i);

}

}

打印结果:

BC5

==========================================================

7.

interfaceInter

{

voidshow(inta,intb);

voidfunc();

}

classDemo

{

publicstaticvoidmain(String[]args)

{

//补足代码:

调用两个函数,要求匿名内部类

Interin=newInter()

{

publicvoidshow(inta,intb)

{

}

publicvoidfunc()

{

}

};

in.show(4,5);

in.func();

}

}

==========================================================

8.

写出程序结果

classTD

{

inty=6;

classInner

{

staticinty=3;

voidshow()

{

System.out.println(y);

}

}

}

classTC

{

publicstaticvoidmain(String[]args)

{

TD.Innerti=newTD().newInner();

ti.show();

}

}

编译失败,非静态内部类中不可以定义静态成员。

内部类中如果定义了静态成员,该内部类必须被静态修饰。

========================================================

9.

选择题,写出错误答案错误的原因,用单行注释的放式。

classDemo

{

intshow(inta,intb){return0;}

}

下面那些函数可以存在于Demo的子类中。

A.publicintshow(inta,intb){return0;}//可以,覆盖。

B.privateintshow(inta,intb){return0;}//不可以,权限不够。

C.privateintshow(inta,longb){return0;}//可以,和父类不是一个函数。

没有覆盖,相当于重载。

D.publicshortshow(inta,intb){return0;}//不可以,因为该函数不可以和给定函数出现在同一类中,或者子父类中。

E.staticintshow(inta,intb){return0;)//不可以,静态只能覆盖静态。

====================================================================

10.

写出this关键字的含义,final有那些特点?

this:

代表本类对象,那个对象调用this所在函数,this就代表那个对象。

final:

1,修饰类,变量(成员变量,静态变量,局部变量),函数。

2,修饰的类不可以被继承。

3,修饰的函数不可以被覆盖。

4,修饰的变量时一个常量,只能赋值一次。

(5,内部类只能访问局部当中final局部变量)

=====================================================================

11.

写出程序结果:

classFu

{

intnum=4;

voidshow()

{

System.out.println("showFu");

}

}

classZiextendsFu

{

intnum=5;

voidshow()

{

System.out.println("showZi");

}

}

classT

{

publicstaticvoidmain(String[]args)

{

Fuf=newZi();

Ziz=newZi();

System.out.println(f.num);

System.out.println(z.num);

f.show();

z.show();

}

}

打印结果:

4

5

showZi

showZi

========================================================

12.

interfaceA

{

voidshow();

}

interfaceB

{

voidadd(inta,intb);

}

classCimplementsA,B

{

//程序代码

publicvoidadd(inta,intb)

{

this.a=a;

this.b=b;

//sum=a+b;

}

publicvoidshow()

{

System.out.println(a+b);

//System.out.println(sum);

}

}

classD

{

publicstaticvoidmain(String[]args)

{

Cc=newC();

c.add(4,2);

c.show();//通过该函数打印以上两个数的和。

}

}

=============================================================

13.

写出程序结果

classDemo

{

publicstaticvoidmain(String[]args)

{

try

{

showExce();

System.out.println("A");

}

catch(Exceptione)

{

System.out.println("B");

}

finally

{

System.out.println("C");

}

System.out.println("D");

}

publicstaticvoidshowExce()throwsException

{

thrownewException();

}

}

打印结果:

BCD

=============================================================

14.

写出程序结果

classSuper

{

inti=0

publicSuper(Strings)

{

i=1;

}

}

classDemoextendsSuper

{

publicDemo(Strings)

{

i=2;

}

publicstaticvoidmain(String[]args)

{

Demod=newDemo("yes");

System.out.println(d.i);

}

}

编译失败,因为父类中缺少空参数的构造函数。

或者子类应该通过super语句指定要调用的父类中的构造函数。

==============================================================

15.

写出程序结果

classSuper

{

publicintget(){return4;}

}

classDemo15extendsSuper

{

publiclongget(){return5;}

publicstaticvoidmain(String[]args)

{

Supers=newDemo15();

System.out.println(s.get());

}

}

编译失败,因为子父类中的get方法没有覆盖。

但子类调用时候不能明确返回值是什么类型。

所以这样的函数不可以存在子父类中。

================================================================

16.

写出程序结果:

classDemo

{

publicstaticvoidfunc()

{

try

{

thrownewException();

System.out.println("A");

}

catch(Exceptione)

{

System.out.println("B");

}

}

publicstaticvoidmain(String[]args)

{

try

{

func();

}

catch(Exceptione)

{

System.out.println("c");

}

System.out.println("D");

}

}

编译失败,因为打印"A"的输出语句执行不到。

记住:

throw单独存在,下面不用定义语句,因为执行不到。

=======================================================

17.

classDemo

{

publicvoidfunc()

{

//位置1;

newInner();

}

classInner{}

publicstaticvoidmain(String[]args)

{

Demod=newDemo();

//位置2;

newInner();//不可以,因为主函数是静态的。

如果要访问Inner需要被static修饰。

}

}

A.在位置1写newInner();//OK

B.在位置2写newInner();

C.在位置2写newd.Inner();//错误,格式错误。

newnewDemo().Inner();

D.在位置2写newDemo.Inner();//错误,因为inner不是静态的。

===========================================================

18.

写出程序结果

classExc0extendsException{}

classExc1extendsExc0{}

classDemo

{

publicstaticvoidmain(String[]arags)

{

try

{

thrownewExc1();

}

catch(Exceptione)

{

System.out.println("Exception");

}

catch(Exc0e)

{

System.out.println("Exc0");

}

}

}

//编译失败。

多个catch时,父类的catch要放在下面。

====================================================

19.

interfaceTest

{

voidfunc();

}

classDemo

{

publicstaticvoidmain(String[]args)

{

//补足代码:

(匿名内部类)

newDemo().show(newTest()

{

publicvoidfunc(){}

});

}

voidshow(Testt)

{

t.func();

}

}

======================================================

20.

写出程序结果

classTest

{

publicstaticStringoutput="";

publicstaticvoidfoo(inti)

{

try

{

if(i==1)

thrownewException();

output+="1";

}

catch(Exceptione)

{

output+="2";

return;

}

finally

{

output+="3";

}

output+="4";

}

publicstaticvoidmain(Stringargs[])

{

foo(0);

System.out.println(output);//结果134

foo

(1);

System.out.println(output);//结果13423

}

}

=================================================================

21.

建立一个图形接口,声明一个面积函数。

圆形和矩形都实现这个接口,并得出两个图形的面积。

注:

体现面向对象的特征,对数值进行判断。

用异常处理。

不合法的数值要出现"这个数值是非法"的提示,不在进行运算。

classNoValueExceptionextendsRuntimeException

{

NoValueException(Stringmessage)

{

super(message);

}

}

interfaceShape

{

voidgetArea();

}

classRecimplementsShape

{

privateintlen,wid;

Rec(intlen,intwid)//throwsNoValueException

{

if(len<=0||wid<=0)

thrownewNoValueException("出现非法值");

else

{

this.len=len;

this.wid=wid;

}

}

publicvoidgetArea()

{

System.out.println(len*wid);

}

}

classCircleimplementsShape

{

privateintradius;

publicstaticfinaldoublePI=3.14;

Circle(intradius)

{

if(radius<=0)

thrownewNoValueException("非法");

this.radius=radius;

}

publicvoidgetArea()

{

System.out.println(radius*radius*PI);

}

}

classExceptionTest1

{

publicstaticvoidmain(String[]args)

{

Recr=newRec(3,4);

r.getArea();

Circlec=newCircle(-8);

System.out.println("over");

}

}

=================================================================

22.

补足compare函数内的代码,不许添加其他函数。

classCircle

{

privatestaticdoublepi=3.14;

privatedoubleradius;

publicCircle(doubler)

{

radius=r;

}

publicstaticdoublecompare(Circle[]cir)

{

//程序代码//其实就是在求数组中的最大值。

intmax=0;//doublemax=cir[0].radius;

for(intx=1;x

{

if(cir[x].radius>cir[max].radius)

max=x;

}

returencir[max].radius;

}

}

classTC

{

publicstaticvoidmain(String[]args)

{

Circlecir[]=newCircle[3];//创建了一个类类型数组。

cir[0]=newCircle(1.0);

cir[1]=newCircle(2.0);

cir[2]=newCircle(4.0);

System.out.println("最大的半径是:

"+Cpare(cir));

}

}

=====================================================================

23.

写出程序结果

publicclassDemo

{

privatestaticintj=0;

privatestaticbooleanmethodB(intk)

{

j+=k;

returntrue;

}

publicstaticvoidmethodA(inti)

{

booleanb;

b=i<10|methodB(4);

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

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2