static void Main(string[] args) { // comparing X to quad is compile time; value - new Sqr (3) specialized quad (runtime piece) Quad X = new Sqr(3); var sqr1 = new Sqr(7); Console.WriteLine($"SQR: Perimeter is {sqr1.Perimeter()}"); Console.WriteLine($"SQR: Area is {sqr1.Area()}"); Console.WriteLine($"SQR: Perimeter {sqr1.Perimeter()}"); var rect1 = new Rect(5, 7); Console.WriteLine($"RECT:Perimeter is {rect1.Perimeter()}"); Console.WriteLine($"RECT:Area is {rect1.Area()}"); //Console.WriteLine ($"About is {rect1.About"}); var quad1 = new Quad(3, 4, 5, 6); Console.WriteLine($"QUAD:Perimeter is {quad1.Perimeter()}"); var shapes = new Quad[] { sqr1, rect1, quad1 }; foreach (var shape in shapes) { Console.WriteLine($"shape is a {shape.Print()}"); //Console.WriteLine($"shapes's area is {shape.Area()}");-- Can't do Area // Converting Shape to rectangle--Cannot change it to quad (Quad has no area) var rect = shape as Rect; if (rect != null) { Console.WriteLine($"shape's area is {rect.Area()}"); } else { Console.WriteLine($"The shape is a quad"); } } }
static void Main(string[] args) { var sqr1 = new Sqr(7); Console.WriteLine($"sqr1 perimeter is {sqr1.Perimeter()}, sqr1 area is {sqr1.Area()}"); var rect1 = new Rect(5, 7); Console.WriteLine($"Rect1 perimeter is {rect1.Perimeter()}"); //Console.WriteLine($"About is {rect1.About}"); Console.WriteLine($"Rect1 area is {rect1.Area()}"); }
static void Main(string[] args) { Quad X = new Sqr(3); var sqr1 = new Sqr(7); Console.WriteLine($"SQR: Perimeter is {sqr1.Perimeter()}"); Console.WriteLine($"SQR: Area is {sqr1.Area()}"); Console.WriteLine($"SQR: Print is {sqr1.Print()}"); var rect1 = new Rect(5, 7); Console.WriteLine($"RECT: Perimeter is {rect1.Perimeter()}"); Console.WriteLine($"RECT: Area is {rect1.Area()}"); //Console.WriteLine($"About is {rect1.About}"); var quad1 = new Quad(3, 4, 5, 6); Console.WriteLine($"QUAD: Perimeter is {quad1.Perimeter()}"); var shapes = new Quad[] { sqr1, rect1, quad1 }; foreach (var shape in shapes) { Console.WriteLine($"shape is a {shape.Print()}"); //Console.WriteLine($"shape's area is {shape.Area()}"); var rect = shape as Rect; if (rect != null) { Console.WriteLine($"shape's area is {rect.Area()}"); } else { Console.WriteLine("The shape is a quad"); } } }