Pokud odvozená třída definuje stejnou metodu, jaká je definována ve své základní třídě, je v C# známá jako přepis metody. Používá se k dosažení polymorfismu za běhu. Umožňuje vám poskytnout konkrétní implementaci metody, kterou již poskytuje její základní třída.
Chcete-li provést přepsání metody v C#, musíte použít virtuální klíčové slovo s metodou základní třídy a přepsat klíčové slovo s metodou odvozené třídy.
Příklad přepsání metody C#
Podívejme se na jednoduchý příklad přepsání metody v C#. V tomto příkladu přepisujeme metodu eat() pomocí klíčového slova override.
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(); } }
Výstup:
Eating bread...