Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

Jetzt lerne ich Java 6

Finale Klassen, Methoden und Felder

Testen Sie unsere 2017 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Nicht immer macht es Sinn, dass ein anderer Programmierer von Ihrer Klasse ableitet und dann Methoden überschreibt oder Eigenschaften verdeckt. Mit einem Java-Schlüsselwort können Sie genau das verhindern.
02:26

Transkript

Bei der Vererbung ist es also möglich, Eigenschaften und Methoden zu überschreiben und diese neu zu implementieren, in abgeleiteten Klassen. Dies bringt uns große Vorteile, wie wir gesehen haben. Aber gegebenenfalls wollen Sie genau das verhindern, dass eben überschrieben wird. Und dafür ist das Schlüsselwort final. Sie können final anwenden auf Eigenschaften, Methoden und auch auf Klassen. Dann sind diese nicht mehr veränderbar. Wie funktioniert das nun? Nun, wir haben hier, zum Beispiel, unsere Methode "Begruessung". Und wir wollen verhindern, dass irgendjemand hingeht und diese Begrüßung überschreibt. Also, ich gehe hier nach Tier, gehe nach getBegruessung und setze diese nun auf final. Schreiben wir also final schnell hier hinein. Und testen. Wir bekommen eine recht unschöne Exception hier, die hier sagt, dass Fisch gerade versucht, eine finale Methode getBegruessung zu überschreiben. Damit verhindern wir also, dass eine Methode überschrieben wird. Gleiches können Sie auch bei Eigenschaften vornehmen, wenn Sie also verhindern wollen, dass eine Eigenschaft später überschrieben wird, oder sogar eine ganze Klasse. Wenn Sie eine Klasse als final titulieren, haben Sie sogar noch einen weiteren Vorteil, wenn von so einer solchen Klasse natürlich nicht mehr abgeleitet werden kann, denn das wäre jetzt nicht mehr möglich. Ich gehe noch mal hier hinein, nehm jetzt hier mal das final aus getBegruessung raus, damit dieser Fehler nicht mehr auftritt. Dann bekommen wir nämlich einen anderen. Dann sehen Sie, dass die Klasse Fisch mitnichten von Tier erben kann. Und wenn eben eine Klasse so konzeptioniert ist, dass von dieser nicht mehr geerbt werden kann, dann kann der Compiler einen viel effizienteren Bytecode erstellen. Und damit ist natürlich die Ausführungsgeschwindigkeit dieser Klasse um vieles schneller. Sie können sich also überlegen, ob eine Klasse gegebenenfalls wirklich so, wie sie ist, fertig ist, und nicht mehr abgeleitet werden kann.

Jetzt lerne ich Java 6

Steigen Sie ein in die Programmierung mit Java 6, lernen Sie die Grundlagen kennen und unternehmen Sie anschließend Ihre ersten Schritte in der objektorientierten Programmierung.

12 Std. 27 min (98 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

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!