实验六类的综合应用实验目的:(1)掌握类的继承,实现构造函数的继承。(2)多态,通过相同的方法名实现不同的功能以及通过上型转换实现多态。实验内容:有一个shape接口,利用该接口来编写圆柱体,圆锥,长方体,和正方体的表面积与体积的应用程序(其中正方体是长方体的子类,圆锥是圆柱的子类),要求接口回调技术来求这些几何图形的体积和表面积。Interfaceshape{Publicdoublevol();//体积Publicdoublearea();//表面积}pareObject,pareTo(Objectobj)用于比较两个对象。pareObject类派生,该类有x和y两个成员变量表示坐标,pareTo()方法,用比较两个Posisition对象到原点(0,0)的距离之差。代码1、lasssy6666611111111{ publicstaticvoidmain(String[]args){ Cuboidcuboid=newCuboid(2,3,4); ("长,宽,高为2,3,4的长方体的体积是:"+()); ("长,宽,高为2,3,4的长方体的表面积是:"+()); Cubecube=newCube(2); ("边长为2的正方体的体积是:"+()); ("边长为2的正方体的表面积是:"+()); circularCylindercircular=newcircularCylinder(3,5); ("半径为3,高为5的圆柱的体积是:"+()); ("半径为3,高为5的圆柱的表面积是:"+()); Conecone=newCone(3,4); ("半径为3,高为5的圆锥的体积是:"+()); ("半径为3,高为5的圆锥的表面积是:"+()); Ballball=newBall(5); ("半径为5的球的体积:"+()); ("半径为5的球的表面积:"+()); }}interfaceshape{ publicdoublevol();//体积 publicdoublearea();//表面积}classCuboidimplementsshape{//长方体 doublea,b,c; Cuboid(){} Cuboid(doublea,doubleb,doublec){ =a; =b; =c; } publicdoublevol(){ doublev=a*b*c; returnv; } publicdoublearea(){ doubles=2*(a*b+b*c+a*c); returns; }}classCubeextendsCuboid{//正方体 Cube(doublea)
广东海洋大学实验+6+类的综合应用-计科1178 来自淘豆网www.taodocs.com转载请标明出处.