Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

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

Eine anonyme Klasse mit Generics

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
In diesem Video lernen Sie, wie Sie eine anonyme Klasse mit Generics programmieren.

Transkript

In diesem Video lernen Sie, wie Sie eine anonyme Klasse mit Generics programmieren. Und zwar werde ich die Berechnung der BMI-Formel auslagern. Für eine anonyme Klasse benötigen wir zunächst einmal ein Interface, das ich BMI-Rechner nenne. Ich gehe auf Hauptmenü, dann auf File New Interface und gebe dem Interface den Namen "BMIRechner", das Package stimmt auch und jetzt klicke ich auf FINISH, und schon wird es mir angelegt und das Interface "BMI-Rechner" werde ich nun mit zwei Typ-Parametern versehen, genauso, wie ich es mit einer generischen Klasse gemacht habe. Die Regeln sind hier die gleichen. Ich gehe also hin, setzte neben den Interface Bezeichner spitze Klammern hinein und dann füge ich Typ-Parameter hinzu. Die nenne ich diesmal "U" und "V". Für die Berechnung der BMI-Formel werde ich eine abstrakte Methode einbauen, die ich Rechnen nennen werde. Als Rückgabewert setze ich den Typ-Parameter "U" ein. Also ich schreibe erstmal "public u", das soll der Typ-Parameter sein. Den haben wir ja hier oben definiert. Und jetzt schreibe ich den Namen der Methode, "rechne". Und die Methode soll einen Übergabe-Parameter erhalten, der ist vom Typ "V" und die Variable nenne ich mal klein "v", und ";". Hiermit habe ich nun ein Interface mit Generics geschaffen. Dieses Interface verfügt über einzige abstrakte Methode und mein generisches Interface kann mit zwei Datentypen parametrisiert werden. Beim ersten handelt es sich um den Rückgabewert und beim Zweiten um den Übergabe- parameter der Methode "rechne". Es handelt sich also um ein Producer Interface, das etwas berechnen kann. Was berechnet und was als Ergebnis zurückgeliefert wird, das ist noch gar nicht festgelegt, denn das legt ja der Consumer fest. Ich wechsle nun zur Start-Klasse und hier werde ich jetzt eine anonyme Klasse programmieren. Und zwar ganz hier oben im "Konstruktor". Zunächst deklariere ich eine Variable des Typs BMI-Rechner, also vom Interface "BMIRechner". Die Variable nenne ich "rechner" und diese initialisiere ich mit einem BMI-Rechner Interface. Denn ich möchte ja eine anonyme Klasse haben. Also sage ich "new BMIRechner( )" und hier müsste normalerweise dann die geschweifte Klammer hin und so weiter. Aber bevor ich das mache gehe ich hin und setze hier beim BMI-Rechner Typ-Parameter, und zwar brauchen wir jetzt folgende Typ Parameter: Als Rückgabewert, hier dieses "U", das soll dann das Ergebnis der Formel sein. Also brauche ich dann ein "Double,". Jetzt kommen wir zum zweiten Typ-Parameter, der vom Typ BMIKoerper sein soll. Ich möchte der anonymen Klasse also einen BMIKoerper übergeben und möchte als Ergebnis den BMI-Wert haben. Also schreibe ich dort "BMIKoerper" hinein und dann setze ich dort spitze Klammern, und kann dort auch wieder über "Double, Double" anzeigen, welche Typ-Parameter, dieser Typ-Parameter wiederum haben soll. Sie sehen also, dass die Typ-Parameter ineinander verschachtelt worden sind. Jetzt kann ich mir als nächstes von Eclipse helfen lassen, ich kann mit dem Cursor ein paar Schritte zurückgehen, und einige Buchstaben löschen. Dann halte ich die Steuerungs-Taste gedrückt, dann drücke ich zusätzlich auf die Leertaste, dann öffnet sich das Kontextmenü, und dort klicke ich doppelt auf BMIRechner. Dann sehen Sie, wie mir die komplette anonyme Klasse zusammengebaut wird. Und hier sehen Sie, dass die Typ-Parameter doppelt hinzugefügt worden sind. Hier stehen sie sowohl als Deklaration, als auch bei der Initialisierung. Aber das ist richtig so. Denn bei der anonymen Klasse können wir den Diamond-Operator nicht verwenden. Jetzt ist alles fertig. Ich brauche allerding die Formel, die Errechnung des BMI-Wertes, da oben in der anonymen Klasse. Deswegen markiere ich die komplette Anweisung hier unten heraus, über Shift + Entf, wandere dann mit dem Cursor hier oben in die Methode "rechner" hinein, der anonymen Klasse, und füge über "Strg + V", was ich kopiert habe, hinein, und hier sehen Sie, dass wir einen Variable-Namen in der Methode "rechner" haben, der sich "V" nennt. Wir müssen also "koerper.getF" gegen "V.getF" ersetzen. Das mache ich jetzt mal. So und als Rückgabewert gebe ich "bmi" zurück. Ich kann das Ganze auch noch etwas abkürzen, indem ich "return" vor die Formel setze. Dann kann ich mir diese Zeile hier sparen. Was jetzt noch fehlt, ist, dass wir hier unten in der letzten Anweisung die Methode "rechner" aufrufen. Das geht wie folgt: Wir fügen den Variablen-Namen "rechner" dort hinein. Dann drücke ich auf den Punkt-Operator, und dann wird mir die Methode "rechner" angeboten, der ich dann den "koerper" übergebe. Und das probiere ich auch noch aus. Ich klicke also auf PLAY, gebe dann die Groesse der Katze "Pinki" ein, "0,51", und das Gewicht, und erhalte den BMI-Wert 23,5. In diesem Video haben Sie gelernt, wie man eine anonyme Klasse mit Generics programmiert. Dabei habe ich Ihnen auch gezeigt, wie man die Generics bei einem Interface anbringt. Denn die anonyme Klasse setzt ja ein Interface voraus.

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!