// Fig. 9.10: Circle3.java // Circle3 class inherits from Point2 and has access to Point2 // protected members x and y. public class Circle3 extends Point2 { private double radius; // Circle3's radius // no-argument constructor public Circle3() { // implicit call to Point2 constructor occurs here } // constructor public Circle3( int xValue, int yValue, double radiusValue ) { // implicit call to Point2 constructor occurs here x = xValue; // no need for validation y = yValue; // no need for validation setRadius( radiusValue ); } // set radius public void setRadius( double radiusValue ) { radius = ( radiusValue < 0.0 ? 0.0 : radiusValue ); } // return radius public double getRadius() { return radius; } // calculate and return diameter public double getDiameter() { return 2 * radius; } // calculate and return circumference public double getCircumference() { return Math.PI * getDiameter(); } // calculate and return area public double getArea() { return Math.PI * radius * radius; } // return String representation of Circle3 object public String toString() { return "Center = [" + x + ", " + y + "]; Radius = " + radius; } } // end class Circle3 /************************************************************************** * (C) Copyright 1992-2003 by Deitel & Associates, Inc. and * * Prentice Hall. All Rights Reserved. * * * * DISCLAIMER: The authors and publisher of this book have used their * * best efforts in preparing the book. These efforts include the * * development, research, and testing of the theories and programs * * to determine their effectiveness. The authors and publisher make * * no warranty of any kind, expressed or implied, with regard to these * * programs or to the documentation contained in these books. The authors * * and publisher shall not be liable in any event for incidental or * * consequential damages in connection with, or arising out of, the * * furnishing, performance, or use of these programs. * *************************************************************************/