title: Why the output of following program is => BC::Display BC::Display BC::Display
body: <pre><code>class BC
  {
      public virtual void Display()
      {
          System.Console.WriteLine("BC::Display");
      }
  }
  
  class DC : BC
  {
      public virtual void Display()
      {
  
          System.Console.WriteLine("DC::Display");
  
      }
  }
  
  class TC : DC
  {
      public virtual void Display()
      {
          System.Console.WriteLine("TC::Display");
      }
  }
  
  
  
  class Program
  {
     public static void Main()
     {
         BC b;
         b = new BC();
         b.Display();
  
         b = new DC();
         b.Display();
  
         b = new TC();
         b.Display();
  
  
     }
  }
  </code></pre>
  
  <p>why output is not "BC::Display DC::Display TC::Display"?</p>