Überlastung

Definition - Was bedeutet Überladung?

Überladen bezieht sich auf die Möglichkeit, mit einem einzigen Bezeichner mehrere Methoden einer Klasse zu definieren, die sich in ihren Eingabe- und Ausgabeparametern unterscheiden. Überladene Methoden werden im Allgemeinen verwendet, wenn sie konzeptionell dieselbe Aufgabe ausführen, jedoch mit einem geringfügig anderen Parametersatz.

Überladen ist ein Konzept, das verwendet wird, um redundanten Code zu vermeiden, bei dem derselbe Methodenname mehrmals verwendet wird, jedoch mit einem anderen Parametersatz. Die tatsächliche Methode, die zur Laufzeit aufgerufen wird, wird zur Kompilierungszeit aufgelöst, wodurch Laufzeitfehler vermieden werden. Überladen bietet Codeklarheit, eliminiert Komplexität und verbessert die Laufzeitleistung.

Technische.me erklärt das Überladen

Überladen wird in Programmiersprachen verwendet, die die Typprüfung in Funktionsaufrufen während der Kompilierung erzwingen. Wenn eine Methode überladen ist, wird die ausgewählte Methode zur Kompilierungszeit ausgewählt. Dies ist nicht dasselbe wie bei virtuellen Funktionen, bei denen die Methode zur Laufzeit definiert wird.

Im Gegensatz zu Java können mit C # Operatoren zusätzlich zu Methoden überladen werden, indem statische Elemente mit dem Schlüsselwort operator definiert werden. Mit dieser Funktion können Sie die Semantik von Operatoren erweitern und anpassen, die für benutzerdefinierte Typen relevant sind, sodass sie zum Bearbeiten von Objektinstanzen mit Operatoren verwendet werden können.

Die Überladungsauflösung in C # ist die Methode, mit der die richtige Funktion auf der Grundlage der übergebenen Argumente und der Liste der Kandidatenfunktionsmitglieder mit demselben Namen ausgewählt wird. Die verschiedenen Kontexte, in denen die Überlastungsauflösung verwendet wird, umfassen:

  • Aufruf einer Methode in einem Ausdruck
  • Konstruktor während der Objekterstellung
  • Indexer-Accessor über einen Elementzugriff und einen vordefinierten oder benutzerdefinierten Operatorausdruck

Es wird empfohlen, eine Überlastung über Vererbungsgrenzen hinweg zu vermeiden, da dies zu Verwirrung führen kann. Überladen kann für Entwickler umständlich werden, wenn es übermäßig verwendet wird und benutzerdefinierte Typen als Parameter verwendet werden, da es die Lesbarkeit und Wartbarkeit von Code beeinträchtigen kann.