Was ist virtuelle Methode in C#
Virtuelle Methoden in C# sind Methoden, die in einer Basisklasse deklariert werden und durch abgeleitete Klassen überschrieben werden können. Mit anderen Worten, eine virtuelle Methode ist eine Methode, die in einer Unterklasse neu definiert werden kann. Hier ist die Syntax dafür:
öffentliche virtuelle LeereDas virtuelle Schlüsselwort zeigt an, dass diese Methode von einer abgeleiteten Klasse überschrieben werden kann und wenn eine abgeleitete Klasse eine virtuelle Methode überschreibt, bietet sie eine eigene Implementierung der Methode.
Um eine virtuelle Methode in einer abgeleiteten Klasse zu überschreiben, fügen Sie das Schlüsselwort Override in die Methodensignatur ein und unten ist die Syntax dafür:
Öffentliche Außerirdische LeereDas Schlüsselwort Override gibt an, dass diese Methode eine virtuelle Methode in der übergeordneten Klasse überschreibt. Hier ist ein Beispiel -Code -Snippet, das die Verwendung virtueller Methoden in C#demonstriert:
mit System verwenden;In diesem Beispiel haben wir eine Basisklasse, die als Berechnung mit einer virtuellen Methode namens Add bezeichnet wird, die einfach zwei Ganzzahlen zusammenfügt. Wir haben auch eine abgeleitete Klasse namens CustomCalculation, die die Methode hinzufügen, jedoch nur, wenn die Summe der beiden Zahlen größer als 10 ist.
In der überschriebenen Methode addieren wir, ob x oder y größer als 10 ist. Wenn diese Bedingung wahr ist, geben wir die Differenz zwischen x und y zurück. Wenn die Bedingung falsch ist, nennen wir die Basisimplementierung der Methode hinzufügen mithilfe des Basis -Schlüsselworts.
In der Hauptmethode erstellen wir ein Berechnungsobjekt und ein CustomCalculationsobjekt. Wir rufen zunächst die virtuelle Methode hinzufügen auf dem Basisberechnung Objekt auf und übergeben 5 und 7 als Argumente. Dies sollte zu einer Summe von 12 führen, und wir rufen dann die überschriebene Methode für das CustomCalculationsobjekt auf, die in 12 und 7 als Argumente gelten. Dies sollte zu einer Differenz von 5 führen, da die Summe der beiden Zahlen größer als 10 ist.
Wie Sie sehen können, wird die überschriebene Methode in der CustomCalculationsklasse nur dann aufgerufen, wenn die Bedingung falsch ist. Wenn die Bedingung wahr ist, liefert die überschriebene Methode eine andere Implementierung der Add -Methode, die die zweite Zahl vom ersten darunter subtrahiert. Nachfolgend ist die Ausgabe des Codes:
Abschluss
Die virtuelle Methode in C# bietet den Klassen eine Möglichkeit, Methoden zu definieren, die durch abgeleitete Klassen angepasst werden können. Indem Sie eine Methode als virtuell markieren, erlauben Sie abgeleitete Klassen, ihre eigene Implementierung der Methode bereitzustellen, und sein ist ein leistungsstarkes Merkmal der objektorientierten Programmierung, die eine größere Flexibilität und Wiederverwendbarkeit im Code ermöglicht.