java刻画三角形和梯形和圆形,三角形、梯形和圆形的类封装.doc

这个Java程序实现了三个几何图形类——Triangle、Ladder和Circle,分别用于表示三角形、梯形和圆形。每个类都有相应的属性和方法来计算周长和面积。Triangle类还包含了一个布尔属性用于判断是否能构成三角形。程序通过实例化这些类并调用其方法,展示了如何获取和修改图形的属性,并输出了各个图形的周长和面积。
摘要由CSDN通过智能技术生成

三角形、梯形和圆形的类封装

实验要求:

编写一个Java应用程序,该程序中有3个类:Trangle、Leder和Circle,分别用来刻画“三角形”、“梯形”和“圆形”。具体要求如下:

a)Trangle类具有类型为double的三个边,以及周长、面积属性,Trangle类具有返回周长、面积以及修改三个边的功能。另外,Trangle类还具有一个boolean型的属性,该属性用来判断三个属能否构成一个三角形。

b)Lader类具有类型double的上底、下底、高、面积属性,具有返回面积的功能。

c)Circle类具有类型为double的半径、周长和面积属性,具有返回周长、面积的功能。

程序运行效果示例:

程序运行效果如下图所示:

程序模板:

AreaAndLength.java

class Circle

{

double radius,area;

Circle(double r){

radius=r; //方法体

}

double getArea() {

return 3.14*radius*radius; //方法体,要求计算出area返回

}

double getLength() {

return 3.14*2*radius; //getArea方法体的代码,要求计算出length返回

}

void setRadius(double newRadius){

radius=newRadius;

}

double getRadius() {

return radius;

}

}

class Lader {

double above,bottom,height,area;

Lader(double a,double b,double h)

{

above=a;bottom=b;height=h; //方法体,将参数a,b,c分别赋值给above,bottom,height

}

double getArea()

{

area=(above+bottom)/2*height;

return area;//方法体,,要求计算出area返回

}

}

class Trangle {

double sideA,sideB,sideC,area,length;

boolean boo;

public Trangle(double a,double b,double c)

{

sideA=a;sideB=b;sideC=c; //参数a,b,c分别赋值给sideA,sideB,sideC

if(a+b>c&&a+c>b&&c+b>a) //a,b,c构成三角形的条件表达式

{

boo=true; //给boo赋值。

}

else

{

boo=false; //给boo赋值。

}

}

double getLength ()

{

if(boo)

{

length=sideA+sideB+sideC;

return length;

}

else

{

System.out.println("不是一个三角形不能计算周长");

return 0;

}//方法体,要求计算出length的值并返回

}

public double getArea()

{

if(boo)

{

double p=(sideA+sideB+sideC)/2.0;

area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC)) ;

return area;

}

else

{

System.out.println("不是一个三角形,不能计算面积");

return 0;

}

}

public void setABC(double a,double b,double c)

{

sideA=a;sideB=b;sideC=c;//参数a,b,c分别赋值给sideA,sideB,sideC

if(a+b>c&&a+c>b&&c+b>a) //a,b,c构成三角形的条件表达式

{ boo=true; //给boo赋值。 }

else

{ boo=false; //给boo赋值。 }

}

}

public class AreaAndLength {

public static void main(String args[]){

double length,area;

Circle circle=null;

Trangle trangle;

Lader lader;

circle=new Circle(10); //创建对象circle

trangle=new Trangle(3,4,5); //创建对象trangle。

lader=new Lader(3,4,10); //创建对象lader

length=circle.getLength(); // circle调用方法返回周长并赋值给length

System.out.println("圆的周长:"+length);

area=circle.getArea(); // circle调用方法返回面积并赋值给area

System.out.println("圆的面积:"+area);

length=trangle.getLength(); // trangle调用方法返回周长并赋值给length

System.out.println("三角形的周长:"+length);

area=trangle.getArea(); // trangle调用方法返回面积并赋值给area

System.out.println("三角形的面积:"+area);

area=lader.getArea(); // lader调用方法返回面积并赋值给area

System.out.println("梯形的面积:"+area);

trangle.setABC(12, 34, 1) ;// trangle调用方法设置三个边,要求将三个边修改为12,34,1。

area=trangle.getArea(); // trangle调用方法返回面积并赋值给area

System.out.println("三角形的面积:"+area);

length=trangle.getLength(); // trangle调用方法返回周长并赋值给length

System.out.println("三角形的周长:"+length);

}

}

实验后的练习:

1. 程序中仅仅省略【代码15】,编译能通过吗?

2. 程序中仅仅省略【代码16】,编译能通过吗?

不能

3. 程序中仅仅省略【代码15】,运行时出现怎样的异常提示?

4. 给Trangle类增加3个方法,分别用来返回3个边:sideA、sideB和sideC。

5. 让AreaAndLength类中的circle对象调用方法修改半径,然后输出修改后的半径以及修改半径后的圆的面积和周长。

展开阅读全文

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值