Abstract Class With Abstract Method in Console Programming in C#

  1. using System.IO;  
  2. using System;  
  3. abstract class Shape {  
  4.     public double dim1, dim2;  
  5.     public Shape(double dimension1, double dimension2) {  
  6.         dim1 = dimension1;  
  7.         dim2 = dimension2;  
  8.     }  
  9.     abstract public double area();  
  10. }  
  11. class Rectangle: Shape {  
  12.     public Rectangle(double dimension1, double dimension2): base(dimension1, dimension2) {}  
  13.     override public double area() {  
  14.         Console.WriteLine("\nInside Area for Rectangle : ");  
  15.         return dim1 * dim2;  
  16.     }  
  17. }  
  18. class Triangle: Shape {  
  19.     public Triangle(double dimension1, double dimension2): base(dimension1, dimension2) {}  
  20.     override public double area() {  
  21.         Console.WriteLine("\nInside Area for Triangle : ");  
  22.         return dim1 * dim2 / 2;  
  23.     }  
  24. }  
  25. class AbstractClass {  
  26.     public static void Main(string[] args) {  
  27.         Rectangle newRectangle = new Rectangle(6, 7);  
  28.         Triangle newTriangle = new Triangle(12, 23);  
  29.         Shape referenceShape;  
  30.         referenceShape = newRectangle;  
  31.         Console.WriteLine("Area is " + referenceShape.area());  
  32.         referenceShape = newTriangle;  
  33.         Console.WriteLine("Area is " + referenceShape.area());  
  34.     }  
  35. }  
Output:

Inside Area for Rectangle : Area is 42
Inside Area for Triangle : Area is 138