Java课程设计——计算平面图形面积周长、立体图形体积
Java面向对象开发课程设计
- 1.课程设计任务:
- 2.设计项目的功能说明
- 3.课程设计代码
- 3.1pack1(平面图形包)
- 3.1.1抽象类
- 3.1.2圆类
- 3.1.3平行四边形类
- 3.1.4矩形类
- 3.2pack2 (立体图形包)
- 3.2.1圆柱体类(作为父类)
- 3.2.2圆锥体类
- 3.3集成测试
- 4.测试结果
1.课程设计任务:
完成一个应用项目的开发,要求实现
(1)计算几何图形矩形、平行四边形和园的面积和周长,
(2)计算圆柱体和圆锥体的体积。
基本要求如下:
①使用面向对象的开发思想,体现封装性、继承性和多态性
②合理使用多类设计,并在不同的包中实现,形成可复用模块;
提示:项目需要1-2组成团队共同完成,组员创建2个包,分别为pack1,pack2,其中pack1包中完成功能(a)中类及方法的建立及测试,pack2包中完成功能(b)中类及方法的建立及测试,最后组长建立一个项目kcsj_name,并创建一个包为compute,完成(a)和(b)中类方法的调用及集成功能测试。(这里的项目名和包名为举例)
③程序正确并满足健壮性
④程序代码命名合理,注释清晰,可读性好;程序名、变量名、方法名符合JAVA命名规范
⑤控制台人机交流流畅,互动性合理,具有一定的通用性
2.设计项目的功能说明
完成一个应用项目的开发,用来计算几何图形矩形、平行四边形和园的面积和周长,计算圆柱体和圆锥体的体积
3.课程设计代码
3.1pack1(平面图形包)
3.1.1抽象类
//平面图形——矩形、平行四边形、圆的面积和周长
package pack1;//定义一个抽象类Shape
public abstract class Shape{static final float PI=3.14F;public abstract float Area();//抽象方法_计算面积public abstract float Perimeter();//抽象方法_计算周长
}
3.1.2圆类
package pack1;
//圆类
public class Clicle extends Shape
{private float radius;public Clicle(float r){radius =r;}//重写父类方法@Overridepublic float Perimeter(){return 2*PI*radius;}@Overridepublic float Area(){return PI*radius*radius;}
}
3.1.3平行四边形类
package pack1;
public class Pingxing extends Shape
{private float base;private float high;private float side_length;public Pingxing(float base,float high,float side_length){this.base=base;this.high=high;this.side_length=side_length;}@Overridepublic float Perimeter(){return (base+side_length)*2;}@Overridepublic float Area(){return base*high;}}
3.1.4矩形类
package pack1;
//矩形类
public class Rantangle extends Shape{private float length;private float width;//构造函数,给长和宽赋值public Rantangle(float length,float width){this.length=length;this.width=width;}//重写父类方法@Overridepublic float Area() {return length*width;}@Overridepublic float Perimeter(){return (length+width)*2;}
}
3.2pack2 (立体图形包)
3.2.1圆柱体类(作为父类)
package pack2;
//圆柱体
public class yuanzhu
{private float high;private float radius;private float PI=3.14F;public yuanzhu(){ }public yuanzhu(float high,float radius){this.high=high;this.radius=radius;}//设置相应的私有成员变量public void setHigh(float high){this.high=high;}public void setradius(float radius){this.radius=radius;}//计算圆柱体的体积public float solid(){return PI*radius*radius*high;}
}
3.2.2圆锥体类
package pack2;
//圆锥体的体积——圆柱体的三分之一,所以继承父类圆柱体
public class yuanzhui extends yuanzhu
{private float One_third=0.33F;public float solid() {return super.solid()*One_third;}
}
3.3集成测试
package project;import java.util.Scanner;
import pack1.Pingxing;
import pack1.Rantangle;
import pack1.Clicle;
import pack1.Shape;
import pack2.yuanzhu;
import pack2.yuanzhui;public class design {public static void main(String[] args) {// TODO Auto-generated method stubint type;Scanner scan=new Scanner(System.in);try {do {System.out.println("请输入需要计算的几何图形:0、退出系统,1、圆形,2、矩形,3、平行四边形,4、圆锥体,5、圆柱体");type=scan.nextInt();if(type==1){Shape cli=new Clicle(2);System.out.println("圆形的面积"+cli.Area()+"圆形的周长"+cli.Perimeter());}if(type==2){System.out.println("请输入矩形的长");float length =scan.nextFloat();System.out.println("请输入矩形的宽");float high =scan.nextFloat();Shape rant=new Rantangle(length,high);System.out.println("长方形的面积"+rant.Area()+"长方形的周长"+rant.Perimeter());}if(type==3){System.out.println("请输入平行四边形的底");float base =scan.nextFloat();System.out.println("请输入平行四边形的宽");float high =scan.nextFloat();System.out.println("请输入平行四边形的边长");float length =scan.nextFloat();Shape pingx=new Pingxing(base,high,length);System.out.println("长方形的面积"+pingx.Area()+"长方形的周长"+pingx.Perimeter());}if(type==4){yuanzhu con=new yuanzhu();con.setHigh(8);con.setradius(3);System.out.println("圆锥体的体积是:"+con.solid()); }if(type==5){yuanzhu cyl=new yuanzhu(5,2);System.out.println("圆柱体的体积是:"+cyl.solid());}}while(type!=0);System.out.println("程序结束,谢谢使用");scan.close();System.exit(0);}catch(Exception e){System.out.println("请输入要求的自然数:整数或小数");System.out.println("程序结束,谢谢使用");}}
}
4.测试结果
Java课程设计——计算平面图形面积周长、立体图形体积相关推荐
- java课程设计 计算器_java课程设计-保存计算过程的计算器
java课程设计-保存计算过程的计算器 编号: <面向对象程序设计(JAVA) > 课程设计(论文)档案 题 目: 保存计算过程的计算器 学 院: 信息学院 专 业: 姓 名: 学 号: ...
- Java课程设计题目二:保存计算过程的计算器
Java课程设计题目二:保存计算过程的计算器 1 设计要求 参考Windows 操作系统提供的计算器设计一个实用的计算器,要求除了具有普通的计算功能外,还具有保存计算过程的功能. ①单击计算器上的数字 ...
- 计算器小程序java课程设计,java课程设计----计算器小程序报告.doc
java课程设计----计算器小程序报告.doc #####学院JAVA语言课程设计报告小程序计算器系统管理班级:#######姓名:#####指导老师:###时间:2012年6月25日至6月29日2 ...
- Java课程设计报告--绩效考核信息管理系统
Java课程设计报告 题目 绩效考核信息管理系统 学生姓名 学 号 院 系 年级专业计算机科学与技术 班 ...
- java基础应用程序超市收银_超市收银程序(JAVA课程设计 2011)
<超市收银程序(JAVA课程设计 2011)>由会员分享,可在线阅读,更多相关<超市收银程序(JAVA课程设计 2011)(15页珍藏版)>请在人人文库网上搜索. 1.软零件研 ...
- 用java做小学数学系统_小学生数学练习题目自动生成系统——java课程设计
<小学生数学练习题目自动生成系统--java课程设计>由会员分享,可在线阅读,更多相关<小学生数学练习题目自动生成系统--java课程设计(37页珍藏版)>请在金锄头文库上搜索 ...
- Java课程设计——挖地雷游戏设计报告
源文件: 大学生Java课程设计--挖地雷游戏设计报告源文件-其它文档类资源-CSDN文库 目 录 摘 要. 1 一.引言. 2 1.设计任务和基本要求. 2 二.报告正文. 3 1.需求分析. 3 ...
- 计算器java程序设计报告总体设计_计算器设计的java课程设计报告.doc
计算器设计的java课程设计报告.doc 华东交通大学课程设计1华东交通大学课程设计课程:Java程序设计题目:计算器设计年级:2010级专业:信息一班学号:姓名:组员:指导教师:课程设计题目:计算器 ...
- java猜数字游戏总结,java课程设计——猜数字游戏
java课程设计--猜数字游戏 目目 录录 前言. 1 正文. 1 1 1.设计任务与要求.设计任务与要求 1 1.1 1.1 设计任务与要求设计任务与要求 1 1.2 1.2 选题目的与意义选题目的 ...
最新文章
- java 中的进制转换
- Java synchronized 详解
- Python 基础教程:常用函数整理
- [蓝桥杯2017初赛]Excel地址
- 鸿蒙内核是闭源吗_鸿蒙出世,中华有为!
- python装饰器应用论文_python 装饰器应用
- 自清洁集合和自清洁事件
- nmap 扫描工具 使用方法
- linux安装php和nginx,Linux下安装配置Nginx以及安装PHP
- sql生成(查询数据的存储过程)代码的存储过程
- 不那么SQL的SQL代码(一)if not exists(...) insert
- 自编译最新稳定版 128M NAND WNDR4300V1 Openwrt Lean固件
- Django的视图函数(二):request对象、视图函数返回值(HTML响应、JsonResponse)、反向解析(视图函数)、HttpResponse子类
- CodeForces 319B 栈
- 计算机实践学什么作用,大学计算机基础:计算机操作实践
- 苹果 WWDC 2019 全记录:iPadOS独立、SwiftUI、Project Catalyst
- can总线不加末端电阻_RS485总线专题讲解,从原理入手!
- vue 组件封装——可自由拖拽移动的盒子
- matlab解高阶非齐次方程并作图,高阶非齐次线性微分方程
- servu ip段访问_西部数码使用指南:利用安全组设置拦截IP(IP段)
热门文章
- 营销大师马斯克又发话了:芯片短缺不要怕,明年有望可解决
- Qt实现中英文切换(国际化)
- Python 比较日期字符串与当前日期的日期差
- Python练习题答案: 馏分类【难度:2级】--景越Python编程实例训练营,1000道上机题等你来挑战
- 2022浙江大学计算机考研超强攻略
- vivo是安卓手机吗_拜托你看看vivo手机自带的翻译功能,这么强大的功能浪费了合适吗...
- Verilog中可综合及不可综合语句概述
- SIFT--特征描述符
- 学计算机理论课要记笔记吗,学生应该用笔记本电脑记笔记吗?
- 记笔记-文件记笔记方法