Visual C# 2011 Grundkurs

Methoden überladen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Wenn man verschiedene Varianten von Methoden des gleichen Typs braucht, etwa um die Methode einmal mit einem und ein andermal mit zwei Parametern aufzurufen, kann man dies durch Methodenüberladung umsetzen.
03:44

Transkript

Wenn man Methoden in C# schreibt, kommt man hin und wieder in die Situation, dass man von einer Methode mehrere Varianten braucht. Mehrere Varianten dahingehend, dass ich z.B. eine Methode habe, die ich einmal mit einem Parameter aufrufen kann, dann evtl. mit zwei Parametern oder mit drei oder mit beliebigen vielen, oder evtl. auch mit anderen Parametern - und das lesen wir jetzt mal und schauen wir uns jetzt mal an. Ich habe hier schon einmal ein bisschen Code vorbereitet. Zum Einen habe ich eine Methode "add". Diese Methode "add" hat keinen Rückgabetyp - eben erkennbar an dem "void" - und zwei Parameter. Parameter heißen "number 1", "number 1", sind beide vom Datentyp "int" und die werden hier einfach nur zusammengerechnet und ausgegeben. In einer Main-Methode oben rufe ich diese Methode auf, übergebe die Zahlen 1 und die Zahlen 2, und die berechnet diese Werte dann. Jetzt kann es aber auch mal sein, dass ich mehr als 2 Zahlen zusammenrechnen möchte, dass ich z.B. sagen will, ich möchte eine 1 übergeben, eine 2 und eine 3. Im Prinzip ist das dieselbe Funktionalität, aber es ist ein Parameter mehr. Dann kann ich eine sogenannte Methodenüberladung erzeugen. Methodenüberladung heißt, dass ich eine Methode habe, die gleich heißt, aber eine verschiedene Anzahl von Parametern hat. Um das zu zeigen, machen wir das mal ganz schnell. Wir kopieren diese Methode einmal mit Strg+C und fügen sie ein mit Strg+V und schreiben hier einfach mal einen weiteren Parameter ran und nennen das Ganze dann "number 3". Dann fügen wir hier in unsere Berechnung "number 3" ein, in die Addition, und man sieht, dass jetzt diese beiden Methoden, obwohl sie denselben Namen haben, parallel existieren können und später, wenn ich das hier aufrufe, erkennt der Compiler automatisch, welche von diesen sogenannten Überladungen ich meine, wenn ich eine mit 2 Parameter vom Typ Integer aufrufe, dann meine ich eben diese Überladung und wenn ich 3 Parameter übergebe, weiß er, dass ich diese Überladung meine. Das Ganze sieht man auch sehr schön, wenn ich hier die Methode aufrufe; hier die öffnende Klammer mache, dann sehe ich hier die erste Überladung, die ich erzeugt hatte und hier vorne sehe ich schon, es steht hier: "1 von 2" und hier kann ich jetzt zwischen den Überladungen hin und her wechseln. Auch wenn das jetzt keinen Sinn machen wird, aber diese Überladung funktioniert nicht nur mit einer unterschiedlichen Anzahl von Parametern, sondern es können auch andere Typen sein. Ich könnte z.B. hier eine Methode schreiben "Void add" und hier habe ich dann zwei double-Werte. Also "double No. 1", "double No. 2". Hier mache ich dasselbe. Ich formuliere das jetzt nicht ganz aus an dieser Stelle, aber hier sieht man jetzt, wenn ich "add" aufrufe, dann habe ich zum einen die Überladung mit 2 double-Werten, die Überladung mit 2 int-Werten und die Überladung mit 3 int-Werten. Ich rufe das Ganze jetzt mal mit double-Werten auf, dass wir uns das Ganze mal angucken können und 4.3. Und dann setzen wir oben mal einen Breakpoint in diese Zeile und führen das Ganze im Debugger aus. Wir haben es ausgeführt, der Debug-Cursor ist hier; wir gehen mit F11 mal in die erste Methode rein. Das waren 2 ganze Zahlen, die da übergeben worden. Er erkennt automatisch die passende Überladung, nämlich die mit 2 int-Parametern, führe das Ganze hier aus und springen zur Nächsten. Hier übergebe ich 3 int- Parameter, amit weiß er automatisch, dass die Überladung mit 3 Integer-Parametern gemeint ist. Wenn wir jetzt hier durchssteppen, kommen wir zur letzten Überladung, die mit den 2 double-Zahlen. Wenn ich hier mit F11 reinsteppe, merkt er automatisch, dass ich gerne die Methode ausführen möchte, an die 2 double-Werte übergeben will. Wir haben uns in diesem Video mal angeschaut, wie man es realisieren kann, dass man unter einem Methodennamen mehrere verschiedene Methoden definiert. Diese Methoden müssen sich in der Parameterliste unterscheiden und unterscheiden tun sie sich dann, wenn entweder die Anzahl der Parameter unterschiedlich ist oder wenn die Datentypen unterschiedlich sind.

Visual C# 2011 Grundkurs

Steigen Sie in die C#-Programmierung ein und lernen Sie sowohl die Grundlagen der Sprache C# als auch die Entwicklungsumgebung Visual Studio 2010 und .NET-Framework kennen.

7 Std. 28 min (81 Videos)
Derzeit sind keine Feedbacks vorhanden...
Hersteller:
Software:
Visual Studio Visual Studio 2010
Exklusiv für Abo-Kunden
Erscheinungsdatum:27.06.2011

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!