求java、程序 急急急

[复制链接]
查看11 | 回复1 | 2011-5-17 12:11:37 | 显示全部楼层 |阅读模式
定义一接口Column,然后声明类实现其接口,实现相关功能。要求如下:
(1)常量
        PI圆周率
(2)接口Column的方法:
        doublegetArea()求表面积
        doublegetVolume()求得柱体的体积
        voiddisplay()将柱体的长、宽、高、周长和体积输出
(3)分别分别声明类Cylinder、Cube和Ball,实现接口中的抽象方法
(4)声明以测试类,分别输出圆柱体、立方体和球的相关数据,计算表面积和体积并输出
回复

使用道具 举报

千问 | 2011-5-17 12:11:37 | 显示全部楼层
/**
*柱体
*/
interfaceColumn{

        doublePI=Math.PI;

        doublegetArea();//求表面积

        doublegetVolume();//求得柱体的体积

        voiddisplay();//将柱体的表面积和体积输出

}
/**
*@authorAdministrator
*圆柱体
*/
classCylinderimplementsColumn{

        privatedoubleradius;
        privatedoubleheight;

        publicCylinder(doubleradius,doubleheight){
                this.radius=radius;
                this.height=height;
        }

        @Override
        publicdoublegetArea(){
                return2*PI*radius*(radiusheight);
        }

        @Override
        publicdoublegetVolume(){
                returnPI*Math.pow(radius,2)*height;
        }

        @Override
        publicvoiddisplay(){
                System.out.println(\"%%%圆柱体:\\n表面积=\"getArea()\",体积=\"getVolume());
        }

        publicdoublegetRadius(){
                returnradius;
        }

        publicvoidsetRadius(doubleradius){
                this.radius=radius;
        }

        publicdoublegetHeight(){
                returnheight;
        }

        publicvoidsetHeight(doubleheight){
                this.height=height;
        }

}
/**
*@authorAdministrator
*立方体
*/
classCubeimplementsColumn{

        privatedoublesideLength;

        publicCube(doublesideLength){
                this.sideLength=sideLength;
        }

        @Override
        publicdoublegetArea(){
                return6*Math.pow(sideLength,2);
        }

        @Override
        publicdoublegetVolume(){
                returnMath.pow(sideLength,3);
        }

        @Override
        publicvoiddisplay(){
                System.out.println(\"%%%立方体:\\n表面积=\"getArea()\",体积=\"getVolume());
        }

        publicdoublegetSideLength(){
                returnsideLength;
        }

        publicvoidsetSideLength(doublesideLength){
                this.sideLength=sideLength;
        }

}
/**
*@authorAdministrator
*球体
*/
classBallimplementsColumn{
        privatedoubleradius;

        publicBall(doubleradius){
                this.radius=radius;
        }

        @Override
        publicdoublegetArea(){
                return4*PI*Math.pow(radius,2);
        }

        @Override
        publicdoublegetVolume(){
                return4.0/3*PI*Math.pow(radius,3);
        }

        @Override
        publicvoiddisplay(){
                System.out.println(\"%%%球体:\\n表面积=\"getArea()\",体积=\"getVolume());
        }

        publicdoublegetRadius(){
                returnradius;
        }

        publicvoidsetRadius(doubleradius){
                this.radius=radius;
        }

}
/**
*@authorAdministrator
*测试类
*/
publicclassTest{

        /**
        *@paramargs
        */
        publicstaticvoidmain(String[]args){

                Columncolumns[]={newCylinder(1,3),newCube(1),newBall(2)};
                for(Columncolumn:columns){
                        column.display();
                }

        }

}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行