Der Laufzeitpolymorphismus verfügt über eine Methodenüberschreibung, die auch als dynamische Bindung oder späte Bindung bezeichnet wird. Es wird durch abstrakte Klassen und virtuelle Funktionen implementiert. Abstrakte Klassen enthalten abstrakte Methoden, die von abgeleiteten Klassen implementiert werden.
Sehen wir uns ein Beispiel einer abstrakten Klasse an, die Laufzeitpolymorphismus implementiert und ihn mit Überschreibung verwendet –
using System; namespace PolymorphismApplication { abstract class Shape { public abstract int area(); } class Rectangle: Shape { private int length; private int width; public Rectangle( int a = 0, int b = 0) { length = a; width = b; } public override int area () { Console.WriteLine("Rectangle class area :"); return (width * length); } } class RectangleTester { static void Main(string[] args) { Rectangle r = new Rectangle(10, 7); double a = r.area(); Console.WriteLine("Area: {0}",a); Console.ReadKey(); } } }
Das obige ist der detaillierte Inhalt vonIn C# umgeschrieben. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!