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

填写一个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);
    }
}

勿以事小而不为。勿以事简而不为。把基础打扎实方能远行。与诸君共勉。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值