Source of Circle.java


  1: // Circle.java
  2: //  a class that implements Measurable
  3: // See also:
  4: //  Measurable.java
  5: //  Rectangle.java

  7: public class Circle implements Measurable {

  9:     private double radius;

 11:     public Circle (double r) {
 12:         radius = r;
 13:     }

 15:     public double getRadius () {
 16:         return radius;
 17:     }

 19:     public double getCircumference () {
 20:         return 2 * Math.PI * radius;
 21:     }

 23:     public double getDiameter () {
 24:         return 2 * radius;
 25:     }

 27:     @Override
 28:     public double getArea () {
 29:         return Math.PI * Math.pow (radius, 2);
 30:     }

 32:     @Override
 33:     public double getPerimeter () {
 34:         return getCircumference ();
 35:     }

 37:     // toString method (inherited from Object)
 38:     @Override
 39:     public String toString () {
 40:         return "Circle (r = " + radius + ")";
 41:     }

 43:     // equals method (inherited from Object)
 44:     @Override
 45:     public boolean equals (Object obj) {
 46:         // if the object is a circle
 47:         if (obj instanceof Circle) {
 48:             // make a Circle variable to refer to it
 49:             Circle c = (Circle) obj;
 50:             // and return whether it has the same radius
 51:             return c.radius == this.radius;
 52:         }

 54:         // not a circle?  not equals!
 55:         return false;
 56:     }
 57: }