new method: not override : override « Class « C# / CSharp Tutorial






using System;

class BaseClass
{
   virtual public void Print()
   { Console.WriteLine("This is the base class."); }
}

class DerivedClass : BaseClass
{
   override public void Print()
   { Console.WriteLine("This is the derived class."); }
}

class SecondDerived : DerivedClass
{
   new public void Print()
   {
      Console.WriteLine("This is the second derived class.");
   }
}

class MainClass
{
   static void Main()
   {
      SecondDerived derived = new SecondDerived();
      BaseClass mybc = (BaseClass)derived;
      derived.Print();
      mybc.Print();
   }
}
B.DoSomething
A.DoSomething








7.24.override
7.24.1.Virtual and override member function
7.24.2.Override without 'override' keyword
7.24.3.Three-level Override methods
7.24.4.new method: not override
7.24.5.Overridden Equals()
7.24.6.Overriding Virtual Methods
7.24.7.Resolving Ambiguity with the override Modifier
7.24.8.Resolving Ambiguity with the new Keyword
7.24.9.PrintValue() Added to the BaseClass Class