实训项目4:
二维平面图形包括圆、矩形、三角形等形状的图形,这些平面图形有共同点,同时每个图形又各有自己的特点。例如,每个图形都有面积和周长,都需要有求面积和求周长的方法,但是圆、矩形、三角形计算面积和计算周长的方法又是不一样的。
本项目是应用面向对象的继承特性编写一个求圆、矩形、三角形的面积和周长的程序。
package 项目4;
public class Graph {
double area;
double perimeter;
}
class Circle extends Graph {
double radii;
public double getRadii() {
return radii;
}
public void setRadii(double radii) {
this.radii = radii;
}
public double getArea() {
return Math.PI * radii * radii;
}
public double getPerimeter() {
return Math.PI * radii * 2;
}
}
class Trigon extends Graph {
double a, b, c;
public double getA() {
return a;
}
public void setA(double a) {
this.a = a;
}
public double getB() {
return b;
}
public void setB(double b) {
this.b = b;
}
public double getC() {
return c;
}
public void setC(double c) {
this.c = c;
}
public double getArea() {
if (a + b > c && b + c > a && a + c > b) {
double ban = (a + b + c) / 2;
area = Math.sqrt(ban * (ban - a) * (ban - b) * (ban - c));
}
return area;
}
public double getPerimeter() {
return a + b + c;
}
}
class Rectangle extends Graph{
double length,wide;
public double getLength() {
return length;
}
public void setLength(double length) {
this.length = length;
}
public double getWide() {
return wide;
}
public void setWide(double wide) {
this.wide = wide;
}
public double getArea(){
return length*wide;
}
public double getPerimeter(){
return (wide+length)*2;
}
}
package 项目4;
import java.util.Scanner;
public class AreaPerimeter {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in = new Scanner(System.in);
while(true){
System.out.println("(请输入图形的代号:【0】圆形 【1】三角形 【2】矩形 【3】退出程序)");
switch (in.nextInt()){
case 0:
Circle c=new Circle();
System.out.println("输入圆的半径:");
c.setRadii(in.nextDouble());
System.out.println("圆的面积为:"+c.getArea());
System.out.println("圆的周长为:"+c.getPerimeter());
break;
case 1:
Trigon t=new Trigon();
System.out.println("请输入三角形的三边");
t.setA(in.nextDouble());
t.setB(in.nextDouble());
t.setC(in.nextDouble());
System.out.println("三角型的面积为:"+t.getArea());
System.out.println("三角形的面积为"+t.getPerimeter());
break;
case 2:
Rectangle r=new Rectangle();
System.out.println("输入矩形的长和宽:");
r.setLength(in.nextDouble());
r.setWide(in.nextDouble());
System.out.println("矩形的面积为:"+r.getArea());
System.out.println("矩形的周长为:"+r.getPerimeter());
break;
case 3:
System.exit(0);
}
}
}
}
分享到:
相关推荐
java 实训 项目 考试系统 附有源文件 java 实训 项目 考试系统 附有源文件java 实训 项目 考试系统 附有源文件 java 实训 项目 考试系统 附有源文件 java 实训 项目 考试系统 附有源文件
不过,既然文件名是“JAVA实训项目.pdf”,我们可以假设这是一份关于Java实训项目的资料。基于这个假设,下面将详细说明与Java实训项目相关的知识点: Java是一种广泛使用的面向对象编程语言,它具有跨平台、多线程...
《Java实训项目:学生选课管理系统详解》 在IT行业中,Java作为一种广泛应用的编程语言,其在企业级应用开发中的地位不可动摇。本实训项目——“学生选课管理系统”,是基于Java技术实现的一个典型示例,旨在提升...
Java实训项目
Java项目实训源代码是学习和理解Java编程语言及其在实际应用中的重要性的宝贵资源。这份压缩包包含了11个不同的项目源代码,每个项目都代表了Java在不同领域的应用,涵盖了从基础到进阶的各种技术。通过研究这些源...
本Java实训项目旨在提供一个全面的学习体验,涵盖了Java编程语言的实际应用和项目开发流程。项目包含源代码和相关文档,确保学习者能够深入理解并实践Java技术。实训项目的核心是图书管理系统,这是一个常见的企业级...
通过这三个实训项目,学习者可以深入理解Java编程在实际应用中的运用,掌握软件开发流程,提高问题解决能力和团队协作技巧。这些项目不仅涉及核心的Java编程,还涵盖了数据库设计、用户界面开发、网络通信、业务逻辑...
Java实训项目是学习Java编程的重要环节,通过实际操作可以加深对理论知识的理解并提升编程技能。本实训项目包含了9个基于Eclipse的Java项目,旨在帮助学员全面掌握Java开发的基本流程和技术要点。以下将详细解析这些...
Java实训教程是针对Java编程语言的一系列实践学习资料,旨在帮助初学者或有一定基础的开发者提升编程技能,加深对Java的理解。在这个实训教程中,你将有机会接触到一系列关键的Java编程概念和技术,涵盖从基础语法到...
在本次Java实训项目中,我们主要聚焦于开发一个高校就餐管理系统,旨在提升学生的实践能力和对Java编程语言的理解。这个系统涵盖了基础的窗口显示功能,以及与数据库交互的能力,利用了Java的大作业设计原则,充分...
本资源摘要信息是基于Java实训报告模板,内容涵盖了六个实训项目,分别是递归算法、矩阵对角线之和、英文字符转换、数据链表、学生数据库、链表基本操作和三角形数字和最大值。 1. 递归算法:输出任意正整数的相反...
JavaWeb项目实训是初学者踏入Web开发领域的重要实践环节,它涵盖了从数据库交互到前端展示的完整流程。在这个过程中,开发者需要掌握Java编程语言、Servlet、JSP等核心技术,并了解如何将它们应用到实际项目中。下面...
java web实训项目:基于SSM的学生成绩管理系统。java web实训项目:基于SSM的学生成绩管理系统。java web实训项目:基于SSM的学生成绩管理系统。java web实训项目:基于SSM的学生成绩管理系统。java web实训项目:...
Java与数据库项目实训_播放器描述项目(面向对象练习),实训项目选择,开题,毕业设计,进度安排,文章编写参考。Java与数据库项目实训_小项目计划安排选题答辩实训开题。内含:播放器OO描述项目、彩票信息查询系统...
java实训小项目,一个想自学java后检验自己自学能力的小项目,主要适用于在校学生以及想学java并有一定基础的学员。
通过这个实训项目,你可以将理论知识应用到实践中,锻炼编程思维,提高问题解决能力。无论是对于初学者还是有一定基础的开发者,"弹克大战"都是一个很好的学习和挑战自我的平台。希望你在广东轻院的小天天分享的这个...
java实训项目,在安博时候做的一个实训项目,很详细,用的主流SSH框架,都可以运行!
在“JAVA实训项目实践”中,我们探讨的核心是利用Java编程语言进行实际的软件开发技能。Java作为一种广泛应用的面向对象的编程语言,以其跨平台、安全性强和性能优秀等特点,深受开发者喜爱。在这个实训项目中,我们...
通过这个实训项目,不仅可以提升Java编程技能,还能加深对软件工程原理的理解,包括需求分析、设计、实现、测试和维护等各个阶段。此外,项目实施过程中遇到的问题和解决方案,也是宝贵的学习经验,它教会我们如何...