public const double PI = Math.PI;
public Shape(double x, double y)
public virtual double Area()
public class Circle : Shape
public Circle(double r) : base(r, 0)
public override double Area()
public Sphere(double r) : base(r, 0)
public override double Area()
public Cylinder(double r, double h) : base(r, h)
public override double Area()
return 2 * PI * x * x + 2 * PI * x * y;
public static void Main()
Shape l = new Cylinder(r, h);
Console.WriteLine("Area of Circle = {0:F2}", c.Area());
Console.WriteLine("Area of Sphere = {0:F2}", s.Area());
Console.WriteLine("Area of Cylinder = {0:F2}{1}{2}", l.Area()," somethingOne", " SomethingTwo");