编写一个圆类Circle,该类拥有:..............................

题目描述:

(1)编写一个圆类Circle,该类拥有:
①一个成员变量
Radius(私有,浮点型);  // 存放圆的半径;
       ②两个构造方法
          Circle( )                 // 将半径设为0
          Circle(double  r )         //创建Circle对象时将半径初始化为r
       ③ 三个成员方法
            double getArea( )       //获取圆的面积
            double getPerimeter( )   //获取圆的周长
            void  show( )          //将圆的半径、周长、面积输出到屏幕
(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。还拥有:
①一个成员变量
double hight(私有,浮点型);  // 圆柱体的高;
       ②构造方法
          Cylinder (double r, double  h )           //创建Circle对象时将半径初始化为r
       ③ 成员方法
            double getVolume( )             //获取圆柱体的体积
            void  showVolume( )             //将圆柱体的体积输出到屏幕
编写应用程序,创建类的对象,分别设置圆的半径、圆柱体的高,计算并分别显示圆半径、圆面积、圆周长,圆柱体的体积。

代码:

package com;

public class Circle {
    private double Radius;

    public double getRadius() {
        return Radius;
    }

    public void setRadius(double radius) {
        Radius = radius;
    }

    public Circle(){
        System.out.println("我是圆!");
    }

    public Circle(double r){
        this.Radius = r;
    }

    public double getArea(double r){
        return Math.PI * r * r;
    }

    public double getPerimeter(double r){
        return 2 * Math.PI * r;
    }

    public void show( ){
        System.out.println("圆的面积: " + this.getArea(Radius));
        System.out.println("圆的周长: " + this.getPerimeter(Radius));
    }
}
package com;

public class Cylinder extends Circle {
    private double hight;

    public Cylinder (double r, double h) {
        super(r);
        this.hight = h;
    }

    public double getVolume() {
        return Math.PI * this.getRadius() * this.getRadius() * hight;
    }

    public void showVolume( ){
        System.out.println("圆柱体的体积:" + this.getVolume());
    }
}
package com;

public class Test {
    public static void main(String[] args) {
        Circle cc = new Circle();
        cc.show( );
        Cylinder ccc =new Cylinder(5, 3);
        ccc.showVolume();
    }

}

 

实验内容: 一、定义一个名为Circle圆类,位于shape包中。要求如下: (1) 该类需要描述圆在二维坐标系中的位置,圆心的横、纵坐标值均取整数;描述圆的半径,取双精度类型。 (2) 无参构造方法将圆心坐标设为坐标圆点,半径设为1.0;有参构造方法需要根据参数值设置圆心坐标和半径值。 (3) 提供一个计算圆面积的方法double getArea()。 (4) 提供一个判断当前圆对象与参数圆对象是否相交的方法(相交方式见下图): boolean isIntersected(Circle another) (5) 提供一个判断当前圆对象是否包含参数圆对象的方法(包含方式见下图): boolean contains(Circle another) (6) 提供一个判断当前圆对象与参数圆对象的大小关系的方法(判断依据是半径,半径之差的绝对值小于0.0001认为相等;返回负数表示当前圆对象小,0表示相等,正数表示当前圆对象) int compareTo(Circle another) (7) 提供返回当前圆的字符串的方法,格式为:[Circle(x,y)-raduis] String toString() 二、定义一个包含main方法的类TestCircle,位于shape包中。要求如下: (1) main方法中调用以下方法。 (2) 编写静态方法createArray,生成位置和大小均随机的10个圆对象,置于数组中。 (3) 编写静态方法sort对这10个圆对象进行升序排序,并输出。 (4) 编写静态方法computeArea计算这10个圆中互不相交和包含的圆的面积之和。 提交要求:打包为可以执行的JAR文档,其中要包含源程序文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨鑫newlfe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值