Cylinder.java
Created with JBuilder
// Fig. 9.15: Cylinder.java
// Cylinder class inherits from Circle4.

public class Cylinder extends Circle4 {
  private double height;  // Cylinder's height

  // no-argument constructor
  public Cylinder()
  {
    // implicit call to Circle4 constructor occurs here
  }

  // constructor
  public Cylinder( int xValue, int yValue, double radiusValue,
                   double heightValue )
  {
    super( xValue, yValue, radiusValue ); // call Circle4 constructor
    setHeight( heightValue );
  }

  // set Cylinder's height
  public void setHeight( double heightValue )
  {
    height = ( heightValue < 0.0 ? 0.0 : heightValue );
  }

  // get Cylinder's height
  public double getHeight()
  {
    return height;
  }

  // override Circle4 method getArea to calculate Cylinder area
  public double getArea()
  {
    return 2 * super.getArea() + getCircumference() * getHeight();
  }

  // calculate Cylinder volume
  public double getVolume()
  {
    return super.getArea() * getHeight();
  }

  // return String representation of Cylinder object
  public String toString()
  {
    return super.toString() + "; Height = " + getHeight();
  }

} // end class Cylinder




Cylinder.java
Created with JBuilder