public class Circle implements Measurable
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: }