Java Grundkurs 3: Generische Programmierung, Datenströme, Datumsrechnung

Als Übergabeparameter einsetzen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Eine der Besonderheiten eines Lambda-Ausdrucks – und somit auch einer Method Reference – ist, dass sie als Übergabeparameter an eine Methode übergeben werden können.

Transkript

Eines der Besonderheiten eines Lambda-Ausdrucks und somit auch einer Method-Reference ist, dass sie als Übergabe-Parameter an eine Methode übergeben werden kann. Um Ihnen diesen Mechanismus in einem Beispiel zu zeigen, werde ich eine Methode in der Startklasse App einbauen, die die Aufgabe hat, das Functional Interface BMIRechner aufzurufen und das Ergebnis als Rückgabewert zurückzuliefern. Diese Methode nenne ich quadriere. Die baue ich hier unten mal ein. private liefert einen Rückgabewert von double und sie nennt sich quadriere. Allerdings wird die Methode quadriere das Quadrat nicht selbst errechnen, sondern stattdessen lediglich als Übermittler die Anfrage an die Methode berechneQuadrat der Klasse QuadratRechnerImpl weiterleiten. Die Methode quadriere wird zwei Parameter entgegennehmen. Beim ersten Parameter werden wir der Methode quadriere die Method-Reference übergeben. Damit das funktioniert muss der Übergabeparameter mit dem Functional Interface Rechner definiert werden. Also schreibe ich hier in die runden Klammern für die Übergabe-Parameter zunächst mal Rechner hinein. Dann setze ich auch die Parametrisierung für die Typ-Parameter Double, Double und die Variable nenne ich rechner. So dann brauche ich noch einen zweiten Typ-Parameter. Den nenne ich a und der ist vom Datentyp Double. Denn dieser Wert soll ja dann entgegengenommen und quadriert werden. Und jetzt müssen wir innerhalb dieser Methode die Methode rechne des Interfaces BMIRechner aufrufen, denn hierdurch führen wir ja dann die Methode berechneQuadrat implizit aus. Also geht es hier weiter. Ich sage erstmal return, weil ich den Rückgabewert direkt weiterleiten werde als Rückgabe-Wert der Methode Quadriere und dann besorge ich mir die Variable rechner. Dann setze ich den Punkt-Operator ein und dann klicke ich doppelt im Kontextmenü auf rechne. So und schon bin ich hiermit erstmal fertig. Und nun können wir diese Methode quadriere von hier oben aus aufrufen. Dabei werden wir ihr die Method-Reference als Parameter übergeben. Auf diesen Ausdruck kann ich nun verzichten. Und stattdessen deklariere ich eine neue Variable. Die nenne ich quadrat und dies vom Datentypen Double und sie wird als Wert den Rückgabewert der Methode quadriere erhalten. Deswegen brauche ich den Zuweisungsoperator und dann rufe ich die Methode quadriere auf. So und jetzt brauche ich an dieser Stelle einen Wert des Typs Rechner und genau das wäre dann in diesem Fall eben ein Lambda-Ausdruck oder eben auch eine Method-Reference des Typs Rechner. Deshalb kann ich an dieser Stelle sagen, QuadratRechnerStrg + Leertaste, dann Double Colon Operator und berechneQuadrat. Und dann muss ich noch die groesse übergeben und schon bin ich mit dem Aufruf dieser Methode fertig. Und hier in der nächsten Anweisungszeile muss ich natürlich den Wert der Variablen hier dort reinsetzen. Also ich schreib hier rein quadrat und dann habe ich das Programm fertig geschrieben. Und das probiere ich auch mal aus. So und wie Sie sehn funktioniert das Programm. Genauso, wie man eine Method-Reference als Parameter an eine Methode übergeben kann, so lässt sich auch eine Lambda-Expression übergeben. Um Ihnen das auch noch zu zeigen, werde ich die Logik der Methode berechneQuadrat in der Klasse QuadratRechnerImpl herausschneiden. Und zwar schneide ich jetzt das a * a hier raus über Strg + X und auf die Klasse QuadratRechnerImpl kann ich nun komplett verzichten, deswegen lösche ich sie. So und jetzt kann ich der Methode quadriere einen Lambda-Ausdruck statt einer Method-Reference übergeben. Hierfür brauche ich zunächst mal einen Parameter. Das soll dann a sein. Dann brauche ich den Lambda-Operator und dann füge ich über Strg + V das a * a hinzu. Und das speichere ich ab und bin dann mit dem Programm fertig und hab Ihnen auch gezeigt, wie man einen Lambda-Ausdruck an eine Methode überreicht. In diesem Video habe ich Ihnen gezeigt, wie man einen Lambda-Ausdruck und eine Method-Reference als Übergabe-Parameter an eine Methode übergeben kann.

Java Grundkurs 3: Generische Programmierung, Datenströme, Datumsrechnung

Steigen Sie tiefer in die Java-Programierung ein und lernen Sie den Umgang mit generischen Typen, Lamda-Ausdrücken, DAtenströmen und mit Datums- und Zeitberechnung.

5 Std. 24 min (47 Videos)
Derzeit sind keine Feedbacks vorhanden...
Hersteller:
Software:
Exklusiv für Abo-Kunden
Erscheinungsdatum:09.10.2016

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!