using System; abstract class Figure { public Figure(double x, double y) { this.x = x; this.y = y; } public abstract void Area(); protected double x = 0; protected double y = 0; } class Square:Figure { public Square(double x, double y):base(x, y) { Console.WriteLine("constructor of Square has been called!"); } public override void Area() { Console.WriteLine("square area:" + x * y); } } class Circle:Figure { public Circle(double x):base(x, x) { Console.WriteLine("constructor of Circle has been called!"); } public override void Area() { Console.WriteLine("circle area: " + Math.PI * x * x); } } class CRunMain { public static void Main() { Figure objA = new Square(10, 20); Figure objB = new Circle(20); objA.Area(); objB.Area(); } }