Refined Abstraction:?
- The Circle class is a refined abstraction that extends the Shape class and
provides the implementation for the Draw() method. It uses the passed
IDrawingAPI to draw the circle.
public class Circle : Shape
{
private double _x, _y, _radius;
public Circle(double x, double y, double radius, IDrawingAPI
drawingAPI)
: base(drawingAPI)
{
_x = x;
_y = y;
_radius = radius;
}
public override void Draw() => _drawingAPI.DrawCircle(_x, _y,
_radius);
}