Circle Shape

Geoffrey Challen // 2020.6.0

Create and complete the implementation of the Circle class. Your class should inherit from the Shape class, and provide the following methods:

  1. Constructor that takes a Double parameter. Creates a new Circle with the passed radius. You can assume that the passed radius is greater than zero. You should call the Shape constructor and pass it the String "circle" to identify the type of this shape.
  2. Implement the Shape method area that takes no arguments and returns a double. Return the area of this shape: Math.PI * radius * radius.
  3. Override fun equals(other: Any?): Boolean. Return true if other is a Circle with the same radius, and false otherwise. Note that other may be null or not a Circle.

Finally, note that your class should not expose any of its internal state publicly.