Heim > Artikel > Backend-Entwicklung > Was ist Überlastung in .net?
Überladung in .net bedeutet, dass es in derselben Klasse mehrere Methoden mit demselben Namen gibt, die Parameterlisten und Rückgabewerttypen dieser Methoden jedoch unterschiedlich sind. Es ist erwähnenswert, dass das Konzept der Überladung nicht im Rahmen der objektorientierten Programmierung liegt. Aus Sicht des Compilers bedeuten unterschiedliche Parameterlisten und unterschiedliche Rückgabewerttypen unterschiedliche Methodennamen. Mit anderen Worten: Die Adresse der Methode wurde zur Kompilierzeit bestimmt und ist eine statische Bindung.
Anhand des Beispiels fassen wir die grundlegenden Merkmale der Überladung zusammen, darunter:
Überladung existiert in derselben Klasse.
Überladene Methoden müssen denselben Methodennamen und unterschiedliche Parameterlisten haben und die Rückgabewerttypen können gleich oder unterschiedlich sein (ein gewisser Grad an Rückgabewertüberladung kann durch implizite Operatoren erreicht werden, ist aber so). nicht empfohlen).
.NET 2.0 führt generische Technologie ein, sodass dieselbe Parameterliste und derselbe Rückgabewerttyp auch eine Überladung darstellen können.
Überladen bedeutet, dass mehrere Funktionen genau den gleichen Namen, aber unterschiedliche Parametertypen oder -nummern haben. Die tatsächlichen Aufrufe werden nach Parametertypen unterschieden
Zum Beispiel haben Sie jetzt 2 Max-Funktionen
1)
int Max(int i,int j) { }
2)
float Max(float i,float j) { }
In Ihrem Programm
int i,j,k; k=Max(i,j);//将调用第一个Max float x,y,z; z=Max(x,y);//将调用第二个Max
Offensichtlich hat Überladung auch Polymorphismus, aber diese Art von Polymorphismus basiert Auf der ursprünglichen Codeebene haben die beiden oben genannten Max-Funktionen den gleichen Namen, aber nach der Kompilierung müssen einige Informationen wie Parametertypen hinzugefügt werden Im Quellcode, der Max aufruft, wählt der Compiler beim Aufruf von
basierend auf den Parametern, dass er die richtige Max-Funktion aufruftDas obige ist der detaillierte Inhalt vonWas ist Überlastung in .net?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!