您的位置:首页 > 移动开发 > 微信开发

第18天 Java面向对象小程序(二)

2016-11-13 21:36 211 查看
填写一个Java应用程序,其中有3个类:Trangle、Lader和Circle,分别用来刻画三角形、梯形和圆形。

上面这个程序就是对类和方法的简单应用,停下来回顾一下这些东西,把基础知识回顾一遍再开始慢慢前行。

下面代码中的注释非常非常清楚,建议自己先构思一下然后自己比着敲一遍。

package test;

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 && b+c>a)  //a, b, c构成三角形的条件表达式
{
boo=true;
}
else
{
boo=false;// 给boo赋值
}
}
double getLength()
{
return (sideA+sideB+sideC); // 方法体,要求计算出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 && b+c>a)  // a, b, c构成三角形的条件表达式
{
boo=true;    //给boo赋值。
}
else
{
boo=false;// 给boo赋值
}
}
}
class Lader
{
double above,bottom,height,area;
Lader(double a,double b,double h)
{
above = a;
bottom = b;
height = h; // 方法体
}
double getArea( )
{
return ((above+bottom)*height/2.0);  // 方法体,,要求计算出area返回
}
}

class Circle
{
double radius,area;
Circle(double r)
{
radius = r; // 方法体
}
double getArea( )
{
return (3.14*radius*radius);  // 方法体,要求计算出area返回
}
double getLength( )
{
return (3.14*2.0*radius);  // getArea方法体的代码,要求计算出length返回
}
void setRadius(double newRadius)
{
radius=newRadius;
}
double getRadius( )
{
return radius;
}
}
public class AreaAndLength
{
public static void main(String args[ ])
{
double length,area;
Circle circle=null;
Trangle trangle;
Lader lader;
circle = new Circle(5.0);  //创建对象circle
trangle = new Trangle(3.0,4.0,5.0);  //创建对象trangle
lader = new Lader(10.0,12.0,5.0);     //创建对象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);
}
}


勿以事小而不为。勿以事简而不为。把基础打扎实方能远行。与诸君共勉。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java