C#中的代码怎么写的问题

创建抽象基类shape和派生类rectangle,circle,利用多态性实现area和show抽象方法,显示rectangle,area,circle,area
代码怎么写,谢谢

abstract class Shape
{
    public abstract double area();
    public abstract void show();
}

class Rectangle : Shape
{
    private double length;
    private double width;

    public Rectangle(double l, double w)
    {
        length = l;
        width = w;
    }

    public override double area()
    {
        return length * width;
    }

    public override void show()
    {
        Console.WriteLine("Rectangle");
    }
}

class Circle : Shape
{
    private double radius;

    public Circle(double r)
    {
        radius = r;
    }

    public override double area()
    {
        return Math.PI * radius * radius;
    }

    public override void show()
    {
        Console.WriteLine("Circle");
    }
}

class Program
{
    static void Main(string[] args)
    {
        Rectangle rect = new Rectangle(5, 10);
        Circle circle = new Circle(5);

        rect.show();
        Console.WriteLine("Area: " + rect.area());
        circle.show();
        Console.WriteLine("Area: " + circle.area());
    }
}