本例定义立体物体接口Solid,规定具备计算自己的表面积和体积的方法。Cube立方体类实现了Solid,具体描述了立方体表面积和体积的计算过程;Sphere球体类实现了Solid,具体描述了球体表面积和体积的计算过程。这两个类可用来创建对象并使用。interfaceSolid{ doublegetArea(); doublegetVolume();}classCubeimplementsSolid{ privatedoublewidth,height,depth; Cube(doublew,doubleh,doubled){ width=w; height=h; depth=d; } publicdoublegetArea(){ return(width*height+width*depth+height*depth)*2; } publicdoublegetVolume(){ returnwidth*height*depth; }}classSphereimplementsSolid{ privatedoubleradius; Sphere(doubler){ radius=r; } publicdoublegetArea(){ return4**radius*radius; } publicdoublegetVolume(){ **radius*radius*radius; }}lassInterfaceDemo{ publicstaticvoidmain(String[]args){ Cubec=newCube(3,4,5); ("立方体的表面积是"+()); ("立方体的体积是"+()); Spheres=newSphere(1); ("球的表面积是"+()); ("球的体积是"+()); }}例8-2抽象类及抽象方法的使用定义抽象父类Shape用来描述形状,其中的getArea()方法为抽象方法。圆形类Circle和矩形类Rectangle继承了Shape类,并各自覆盖了getArea()方法实现了相应功能。这两个子类是可以用来创建对象进行应用的类。abstractclassShape{ //抽象类ShapeprotectedStringcolor; //颜色Shape(){} //无参构造方法,无执行语句Shape(Stringcol){ //有参构造方法color=col;}abstractpublicdoublegetArea();//抽象方法getArea()publicStringtoString(){ //得到描述信息字符串return"颜色是"+color;}}classCircleextendsShape{ //Shape的子类圆类doubleradius; //ircle(Stringc,doubler){ //构造方法super(c); //调用父类有参构造方法radius=r;}publicdoublegetArea(){//实现父类的抽象方法,*radius*radius;}publicStringtoString(){ //覆盖父类的同名方法return"圆的面积是:"+getArea()+();}}classRectangleextendsShape{ //Shape的子类矩形类protecteddoublewid,len; //长,宽publicRectangle(Stringc,doublew,doublel){ //构造方法super(c); wid=w;len=l;}publicdoublegetArea(){//实现父类的抽象方法,求长方形面积returnwid*len;}publicStringtoString(){ //覆盖父类的同名方法return"长方形的面积是:"+getArea()+();}}classTestShape{publicstaticvoidmain(String[]args){Rectanglerect=newRectangle(“蓝色”,,);Circlecir=newCircle(“绿色”,);(());(());}}例8-3薪酬接口的定义inter
JAVA例题8 来自淘豆网m.daumloan.com转载请标明出处.