/** * Concrete strategy to compute the area of a circular shape: knows its own radius * and how to compute its area. * @author Dung X. Nguyen *
* Copyright 1999 by Dung X. Nguyen - Al rights reserved.
*/
public class Circle extends AShape
{
private double _dRadius;
/**
* Initializes this Circle
with a given radius.
* @param dRadius the radius, >= 0.
* @exception IllegalArgumentException if param < 0.
*/
public Circle(double dRadius)
{
if (dRadius < 0)
{
throw new IllegalArgumentException ("Circle.Circle (radius): radius < 0");
}
_dRadius = dRadius;
}
/**
* @returns this Circle
's area.
*/
public double dArea ()
{
return Math.PI * _dRadius * _dRadius;
}
/**
* @returns a String describing a Circle and its radius.
*/
public String toString ()
{
return "Circle (radius = " + _dRadius + ")";
}
}