Om härledd klass definierar samma metod som definieras i sin basklass, kallas det metodöverskridande i C#. Det används för att uppnå körtidspolymorfism. Det gör att du kan tillhandahålla specifik implementering av metoden som redan tillhandahålls av dess basklass.
För att utföra metodöverstyrning i C# måste du använda virtuell nyckelord med basklassmetod och åsidosätta nyckelord med härledd klassmetod.
C# metod åsidosättande exempel
Låt oss se ett enkelt exempel på metodöverstyrning i C#. I det här exemplet åsidosätter vi metoden eat() med hjälp av åsidosätt nyckelordet.
using System; public class Animal{ public virtual void eat(){ Console.WriteLine('Eating...'); } } public class Dog: Animal { public override void eat() { Console.WriteLine('Eating bread...'); } } public class TestOverriding { public static void Main() { Dog d = new Dog(); d.eat(); } }
Produktion:
Eating bread...