实训项目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实训项目(含源码和文档)java实训项目(含源码和文档)java实训项目(含源码和文档)java实训项目(含源码和文档)
Java实训项目
JAVA实训项目.pdf
Java项目实训源代码,有11个非常实用的项目源代码
这是期末实训项目的三个文档,内有完整的项目需求文档,可以锻炼自己学过的java知识,是很不错很难得的材料。。。初学者就需要这样的锻炼
学生选课管理系统,使学校任选课的维护,学生选课,查询,成绩录入,统计等变得更方便简洁,形成教与学的积极互动。
暑期实训时的一个java实训教程,发上来共享
Java实训项目,综合面向对象、I/O、实用类、集合框架等知识点
java web实训项目:基于SSM的学生成绩管理系统。java web实训项目:基于SSM的学生成绩管理系统。java web实训项目:基于SSM的学生成绩管理系统。java web实训项目:基于SSM的学生成绩管理系统。java web实训项目:...
Java与数据库项目实训_播放器描述项目(面向对象练习),实训项目选择,开题,毕业设计,进度安排,文章编写参考。Java与数据库项目实训_小项目计划安排选题答辩实训开题。内含:播放器OO描述项目、彩票信息查询系统...
JAVA实训项目实践.
java项目实训
java实训—高校就餐管理系统,窗口显示,包含实训报告
java实训项目,在安博时候做的一个实训项目,很详细,用的主流SSH框架,都可以运行!
Java实训项目象棋设计报告全文共10页,当前为第4页。·如果对方在和其他玩家对弈中,则应该给与相应的提示信息。 Java实训项目象棋设计报告全文共10页,当前为第4页。 ·象棋规则一定要严密。 ·棋子样式采用最普通...
本项目是设计《贪吃蛇》小游戏的Java程序,当游戏开始时,通过方向键来改变蛇的运行轨迹,空格键可以使游戏暂停,使用Random函数可以在规定的范围空间内随机产生食物,蛇一旦吃到食物就增加身体的长度,并会获得一定...
JAVA实训-在线考试系统项目java源码.zipJAVA实训-在线考试系统项目java源码.zipJAVA实训-在线考试系统项目java源码.zipJAVA实训-在线考试系统项目java源码.zipJAVA实训-在线考试系统项目java源码.zipJAVA实训-在线...
JAVA实训小项目--弹克大战学习版(功能已基本完成,主要目的是学习编程的思想)弹克大战编可以学到更多关于面向对象的思想,个人从中学到不少,有需要的就学习一下吧! 来自广东轻院---小天天