Virtuelle Methode

Autor: Randy Alexander
Erstelldatum: 1 April 2021
Aktualisierungsdatum: 26 Juni 2024
Anonim
C++ Tutorial #16 - virtual und mehr zu Vererbung
Video: C++ Tutorial #16 - virtual und mehr zu Vererbung

Inhalt

Definition - Was bedeutet virtuelle Methode?

Eine virtuelle Methode ist eine deklarierte Klassenmethode, die das Überschreiben durch eine Methode mit derselben abgeleiteten Klassensignatur ermöglicht. Virtuelle Methoden sind Werkzeuge, mit denen das Polymorphismus-Feature einer objektorientierten Sprache wie C # implementiert wird. Wenn eine Instanzmethode eines virtuellen Objekts aufgerufen wird, wird die aufzurufende Methode auf der Grundlage des Laufzeittyps des Objekts bestimmt, der in der Regel der der am häufigsten abgeleiteten Klasse entspricht.

Eine Einführung in Microsoft Azure und die Microsoft Cloud | In diesem Handbuch erfahren Sie, worum es beim Cloud-Computing geht und wie Microsoft Azure Sie bei der Migration und Ausführung Ihres Unternehmens aus der Cloud unterstützen kann.

Techopedia erklärt die virtuelle Methode

Eine virtuelle Methode wird verwendet, um die angegebene Basisklassenimplementierung zu überschreiben, wenn ein Laufzeitobjekt vom abgeleiteten Typ ist. Somit erleichtern virtuelle Methoden die konsistente Funktionalität eines verwandten Objektsatzes.

Ein Beispiel für eine Implementierung einer virtuellen Methode sind die Klassen Manager und Clerk, die von der Basisklasse Employee mit einer virtuellen CalculateSalary-Methode abgeleitet wurden und in abgeleiteten Klassen mit der für den entsprechenden Typ erforderlichen Logik überschrieben werden können. Eine Liste von Objekten vom Typ Mitarbeiter kann zur Laufzeit aufgerufen werden, um ein Gehalt zu berechnen - ohne den spezifischen Implementierungstyp zu kennen.

Die Implementierung von virtuellen Methoden unterscheidet sich in Programmiersprachen wie C ++, Java, C # und Visual Basic .NET. In Java sind standardmäßig alle nicht statischen Methoden virtuell, mit Ausnahme von Methoden, die privat sind oder mit dem Schlüsselwort final gekennzeichnet sind. C # erfordert das Schlüsselwort virtual für virtuelle Methoden mit Ausnahme von privaten, statischen und abstrakten Methoden und das Schlüsselwort override zum Überschreiben der abgeleiteten Klassenmethode.

Eine rein virtuelle Methode ist eine virtuelle Methode, die eine abgeleitete Klasse zum Implementieren einer Methode auffordert und keine Instanziierung der Basisklasse oder der abstrakten Klasse zulässt.