Java上机实验报告(4)

实验 (4) 项目名称:子类与继承-求圆柱和圆锥

一、 实验报告内容一般包括以下几个内容:

  1. 实验项目名称 实验4 子类与继承-求圆柱和圆锥
  2. 实验目的和要求
    本实验的目的:
    (1)掌握(继承)类的声明;
    (2)掌握构造方法执行机理
    (3)掌握private、protected、public等修饰符;
    (4)掌握super的各种用法
    实验具体要求:
    定义一个圆类Circle,成员变量:半径;
    成员方法:构造方法、get和set半径的方法、计算面积和周长的方法。
    定义圆柱和圆锥类,定义相应的变量成员和成员方法。
    使用以上类编程,输出圆柱和圆锥面积和体积。
    假设圆的半径是3,圆柱和圆锥的底半径也是3,高是2。
    实验思路如下:
    请添加图片描述
  3. 实验原理
  4. 主要仪器设备
    (1)学生每人一台PC机;
    (2)互联网环境。

实验解答:
Circle.java

package data20240321;

public class Circle {
    double radius;
    public Circle()
    {
        radius=1;
    }
    public double getArea()
    {
        return Math.PI*Math.pow(radius,2);
    }
    public double getAround()
    {
        return 2*radius*Math.PI;
    }
    public void setRadius(double radius)
    {
        this.radius=radius;
    }
    public double getRadius()
    {
        return radius;
    }
}

CircleColumn.java

package data20240321;

public class CircleColumn extends Circle{
    double height;
    public double getHeight()
    {
        return height;
    }
    public void setHeight(double height)
    {
        this.height=height;
    }
    public double getColumnV()
    {
        return getArea()*height;
    }
    public double getColumnA()
    {
        return 2*getArea()+getAround()*height;
    }
}

CircleCone.java

package data20240321;

public class CircleCone extends Circle{
    double height;
    public double getHeight()
    {
        return height;
    }
    public void setHeight(double height)
    {
        this.height=height;
    }
    public double getConeV()
    {
        return getArea()*height/3.0;
    }
    public double getConeA()
    {
        return getArea()+Math.PI*radius*Math.sqrt(Math.pow(radius,2)+Math.pow(height,2));
    }
}

MainClass.java

package data20240321;

public class MainClass {
    public static void main(String[] args) {
        CircleColumn circleColumn = new CircleColumn();
        CircleCone circleCone = new CircleCone();
        circleCone.setHeight(3);
        circleCone.setRadius(1);
        circleColumn.setHeight(1);
        circleColumn.setRadius(1);
        System.out.printf("圆柱的体积为%.2f,圆柱的面积为%.2f\n",circleColumn.getColumnV(),circleColumn.getColumnA());
        System.out.printf("圆锥的体积为%.2f,圆锥的面积为%.2f\n",circleCone.getConeV(),circleCone.getConeA());
    }
}
  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值