/** * 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 + ")"; } }