1、实验名称:求柱体体积
2、实验目的:
理解并使用抽象类及抽象方法
理解并掌握向上转型实现多态
继续掌握引用类型的参数传值的过程及内存中的变化情况
熟练代码调试
实现求圆柱、方柱、三棱柱的体积
3、实验源代码:
Circle.java

public class Circle {private  double r;public Circle(double r) {if(r>0){this.r = r;}else {System.out.println("error!");}}public double getArea() {return Math.PI * r * r;}public void setR(double r) {if(r>0){this.r = r;}else {System.out.println("error!");}}
}

Square.java

public class square {private double a=0;private double b=0;private double c=0;private double h=0;public square(double a, double h) {this.a = a;this.h = h;}public square(double a, double b, double c) {this.a = a;this.b = b;this.c = c;}public void setA(double a) {if(a>0){this.a = a;}else {System.out.println("error!");}}public void setB(double b) {if(b>0){this.b = b;}else {System.out.println("error!");}}public void setC(double c) {if(c>0){this.c = c;}else {System.out.println("error!");}}public void setH(double h) {if(h>0){this.h = h;}else {System.out.println("error!");}}public double getArea(){if(h!=0&&b!=0){System.out.println("error!");return -1;}if(h!=0){double s=a*h/2;return s;}else {double p=(a+b+c)/2;double s=Math.sqrt(p*(p-a)*(p-b)*(p-c));return s;}}
}

Rectangle.java

public class rectangle {private double a;private double b;public rectangle(double a, double b) {if(a>0&&b>0) {this.a = a;this.b = b;}else {System.out.println("error!");}}public void setA(double a) {if(a>0) {this.a = a;}else {System.out.println("error!");}}public void setB(double b) {if(b>0){this.b = b;}else {System.out.println("error!");}}public double getArea() {return a*b;}
}

Cuboid.java

package 作业.four;public class cuboid extends rectangle{private double h;public cuboid(double a, double b,double h) {super(a, b);if(a>0&&b>0&&h>0) {this.h = h;}else{System.out.println("error!");}}public void setR(double h) {if(h>0) {this.h = h;}else {System.out.println("error!");}}public double getArea() {double s=super.getArea();return s*h;}
}
Cylinder.java
package 作业.four;public class cylinder extends Circle{private double h;public cylinder(double r ,double h) {super(r);if(r>0&&h>0) {this.h = h;}else{System.out.println("error!");}}public void setR(double h) {if(h>0) {this.h = h;}else {System.out.println("error!");}}public double getArea() {double s=super.getArea();return s*h;}
}

Triangular_cylinder.java

public class Triangular_cylinder extends square{private double h;public Triangular_cylinder(double a, double h1, double h) {super(a, h1);if(a>0&&h1>0&&h>0) {this.h = h;}else{System.out.println("error!");}}public Triangular_cylinder(double a, double b,double c, double h) {super(a, b, c);if(a>0&&b>0&&h>0) {this.h = h;}else{System.out.println("error!");}}public void setR(double h) {if(h>0) {this.h = h;}else {System.out.println("error!");}}public double getArea() {double s=super.getArea();return s*h;}}

Demo.java

package 作业.four;public class Demo {public static void main(String[] args) {cuboid V1=new cuboid(1,2,3);cylinder V2=new cylinder(1,1);Triangular_cylinder V3=new Triangular_cylinder(3,4,5,4);System.out.println("立方体体积为:"+V1.getArea());System.out.println("圆柱体体积为:"+V2.getArea());System.out.println("三角柱体体积为:"+V3.getArea());}
}

4、实验运行结果图:

5、实验总结:
设计了基础的三个二维图形界面,通过继承的方式去构建三维图像,最后通过Demo主函数进行调用(特殊:设计三角形时,数据进行了两种方式构建)

JAVA实验,求柱体面积相关推荐

  1. java海伦公式求三角形面积_海伦公式求三角形面积出错求教

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 就下面这个程序 输入其他的数字都可以算出面积 但是当输入3,4,6时 计算出面积为零 求吧友指出错误在哪 package javaapplication1 ...

  2. java shp求相交面积_shp文件自相交处理的方法

    原标题:shp文件自相交处理的方法 今天基于GDAL使用shp文件对栅格影像进行裁剪时出现了下面的问题,提示多边形自相交了 Warning1: RingSelf-intersectionatornea ...

  3. java多态 求形状面积_JAVA多态计算面积main函数调用方法

    public static void main(String[] args) { Shape shape; Scanner input = new Scanner(System.in); System ...

  4. java继承求三角形圆形面积_java求三角形面积

    (min>c)min=c; if(min>d)min=d; System.out.println("min is "+min); } } } 15.test30003求 ...

  5. 已知三角形三边长求面积java_已知三角形三点坐标求三角形面积.java

    已知三角形三点坐标求三角形面积 主程序代码如下: import java.util.*; public class Tringle { public static void main(String[] ...

  6. Java带GUI求柱体的体积

    Java带界面求柱体的体积 描述:编写一个图形界面程序,程序可以输入两种柱体的参数:长方体和圆柱体,点击"计算体积"按钮后,显示柱体的体积. 文章目录 Java带界面求柱体的体积 ...

  7. 【无标题】java求等腰梯形面积

    由于学校即将进行java期末考试,为了应对复习需要,需要一个通过上底,下底,斜边求等腰梯形的面积.其他文章都是通过求高的方式求等腰梯形面积的,所以我苦思良久,写下了这段代码.我通过勾股定理间接求梯形的 ...

  8. Java实现求多个矩形、三角形、圆形和梯形的周长和面积

    实现:由用户选择对哪个图形进行计算,由用户决定是否退出程序,界面友好.可读性强. import java.util.Scanner;class rectangle//矩形 {int long1;//长 ...

  9. 武汉科技大学java题库答案_武汉科技大学 java实验报告 实验二

    <武汉科技大学 java实验报告 实验二>由会员分享,可在线阅读,更多相关<武汉科技大学 java实验报告 实验二(9页珍藏版)>请在金锄头文库上搜索. 1.注:"实 ...

最新文章

  1. mysql left join,right join,inner join用法分析
  2. Tidio AI 趋势报告:约42%受访者能够接受机器人伴侣
  3. 这38个小技巧告诉你如何快速学习MySQL数据库
  4. A*,IDA*—高档次的暴搜
  5. idb 怎么回复mysql_MysqliDb 库的一些使用简单技巧(php)
  6. Android笔记:invalidate()和postInvalidate() 的区别及使用(转载)
  7. QQ空间迁移_【山特C3KS_连接ESXI虚拟机】
  8. 任泉自曝在Star VC年薪100万 今年重点投资互联网金融
  9. python小程序之天天向上
  10. 【好东西】ACM在线模版-f-zyj
  11. 取次花丛懒回顾,半缘修道半缘君
  12. 【前端领域】3D旋转超美相册(HTML+CSS)
  13. 在i3wm中修改默认终端
  14. [js]在10月31日设置月份为11月,会变成12月的问题
  15. 【实例】使用 PHPExcel 读取excel 文件
  16. 英雄联盟轮播图自动轮播
  17. AI-制作纸张纹理效果
  18. 基于JAVA菜鸟驿站快递分发系统计算机毕业设计源码+系统+lw文档+部署
  19. php 5.3.5 安装_php5.3下载|php 5.3.5 VC6版下载 附安装图解 - 121下载站
  20. 在C#中以编程方式将PNG或JPG图像转换为PSD指南出炉!

热门文章

  1. Win10任务栏透明工具TranslucentTB(TranslucentTB基础配置)
  2. 视频质量评价技术零基础学习方法
  3. jmeter-简单接口测试
  4. vscode中安装开发html5中需要的插件
  5. 算法:动态规划——线性模型之小朋友过桥
  6. ArangoDB 多模型数据库概念
  7. Mysql 避免使用 IN 和 NOT IN
  8. 粘贴板管理 android,安卓剪贴板管理(Clipper Plus)
  9. 与其苟延残喘,不如纵情燃烧
  10. 新手做网站只需要4个步骤