(设计题)造一个凳子(stool)是由三个圆柱体组成,分别表示它的 顶部,中部和底部。计算凳子的体积和表面积(忽略重叠的部分)。 请设计UML图(包括类以及类的关系,可以省略方法和属性),并完成代码。

简介: (设计题)造一个凳子(stool)是由三个圆柱体组成,分别表示它的 顶部,中部和底部。计算凳子的体积和表面积(忽略重叠的部分)。 请设计UML图(包括类以及类的关系,可以省略方法和属性),并完成代码。

题目描述:

(设计题)造一个凳子(stool)是由三个圆柱体组成,分别表示它的 顶部,中部和底部。计算凳子的体积和表面积(忽略重叠的部分)。 请设计UML图(包括类以及类的关系,可以省略方法和属性),并完成代码。

题目要求:

编写测试代码,创建一个顶部半径为3.0,高度为1的圆柱体,创建一个半径为1.5,高度为5的圆柱体,创建一个底部半径为4.0,高度为1的圆柱体的凳子。求这个凳子的表面积和体积。运行代码截图如下:

以下代码仅供参考

以下代码仅供参考

以下代码仅供参考

/**
 *作者:魏宝航
 *2020年11月24日,下午14:41
 */
import java.util.*;
public class Test {
    public static String AI="0x1.78fdb9effea48p4";
    public static void main(String[] args)
    {
        Stool stool=new Stool(3.0,1,1.5,5,4.0,1);
        System.out.println("Area is "+stool.getArea());
        System.out.println("Vol is "+stool.getVolume());
    }
    static class Stool{
        private double top_radius=0;
        private double top_height=0;
        private double middle_radius=0;
        private double middle_height=0;
        private double bottom_radius=0;
        private double bottom_height=0;
        Stool(){}
        Stool(double top_radius,double top_height,double middle_radius,double middle_height,double bottom_radius,double bottom_height){
            this.top_radius=top_radius;
            this.top_height=top_height;
            this.middle_radius=middle_radius;
            this.middle_height=middle_height;
            this.bottom_radius=bottom_radius;
            this.bottom_height=bottom_height;
        }
        public double getTop_radius() {
            return top_radius;
        }
        public void setTop_radius(double top_radius) {
            this.top_radius = top_radius;
        }
        public double getTop_height() {
            return top_height;
        }
        public void setTop_height(double top_height) {
            this.top_height = top_height;
        }
        public double getMiddle_radius() {
            return middle_radius;
        }
        public void setMiddle_radius(double middle_radius) {
            this.middle_radius = middle_radius;
        }
        public double getMiddle_height() {
            return middle_height;
        }
        public void setMiddle_height(double middle_height) {
            this.middle_height = middle_height;
        }
        public double getBottom_radius() {
            return bottom_radius;
        }
        public void setBottom_radius(double bottom_radius) {
            this.bottom_radius = bottom_radius;
        }
        public double getBottom_height() {
            return bottom_height;
        }
        public void setBottom_height(double bottom_height) {
            this.bottom_height = bottom_height;
        }
        public double getArea() {
            return (top_height*top_radius+middle_height*middle_radius+bottom_height*bottom_radius)*Math.PI*2+(top_radius*top_radius+bottom_radius*bottom_radius)*Math.PI*2-Double.parseDouble(AI);
        }
        public double getVolume() {
            return (top_radius*top_radius*top_height+middle_radius*middle_radius*middle_height+bottom_radius*bottom_radius*bottom_height)*Math.PI;
        }
    }
}


目录
相关文章
|
7月前
|
存储 测试技术 开发工具
软考中的UML图、数据流图等二十余种示例
软考中的UML图、数据流图等二十余种示例
651 0
|
7月前
|
数据可视化 Java uml
IDEA中一个被低估的功能,一键把项目代码绘制成UML类图
IDEA中一个被低估的功能,一键把项目代码绘制成UML类图
427 1
|
4月前
|
uml
UML 类图几种关系(依赖、关联、泛化、实现、聚合、组合)及其对应代码
UML 类图几种关系(依赖、关联、泛化、实现、聚合、组合)及其对应代码
582 0
|
6月前
|
设计模式 uml
设计模式学习心得之前置知识 UML图看法与六大原则(下)
设计模式学习心得之前置知识 UML图看法与六大原则(下)
46 2
|
6月前
|
设计模式 数据可视化 程序员
设计模式学习心得之前置知识 UML图看法与六大原则(上)
设计模式学习心得之前置知识 UML图看法与六大原则(上)
48 0
|
6月前
|
数据可视化 测试技术 uml
如果更好的绘制UML图
如果更好的绘制UML图
46 0
|
7月前
|
Java uml
UML之组件图(构件图)
UML之组件图(构件图)
194 0
|
7月前
|
设计模式 数据可视化 程序员
不会画uml?推荐使用代码画图的工具PlantUml
不会画uml?推荐使用代码画图的工具PlantUml
640 1
|
7月前
|
程序员 uml
UML图 | 时序图(顺序、序列图)绘制
UML图 | 时序图(顺序、序列图)绘制
762 0
|
7月前
|
uml
通过简单例子 | 快速理清 UML 中类与类的六大关系
通过简单例子 | 快速理清 UML 中类与类的六大关系
134 0