Vorlesung Informatik 1 - Teil A: Java Kurs
2.2 Finale Klassen, Methoden und Variablen
Den Modifizierer final kann man auf Methoden, Klassen und Variablen anwenden. Er verhindert weitere Änderungen:
- Wird eine Klasse final deklariert, kann sie nicht weiter vererbt werden, d.h. man kann sie
nicht mehr als Basisklasse verwenden:
public final class Ameise{
...
Besonders in größeren Teams hilft es, deutlich zu machen, dass die Klassenhierarchie hier endet.
Beispiele für final Klassen in der Java API: String, Integer, Double, ... - Eine Methode, die final deklariert wird, kann nicht mehr überschrieben werden. Das kann
aus Sicherheitsgründen sein (z.B bei Netzwerk-Verbindungen, Passwörtern, ...) oder um zu verhindern,
dass bestimmte Programmteile umgangen werden (z.B. StandardAnwendung.paintComponent,
StandardAnwendung.paint).
- Eine Variable, die final deklariert ist, kann nicht mehr verändert werden, es ist eine
Konstante.
In Java gilt die Konvention, dass man final-Variablen nur mit Großbuchstabe schreibt:
JOptionPane.ERROR_MSESSAGE, Color.RED, ...
Es können sowohl Instanz- als auch lokale Variablen final deklariert werden. - Die Verwendung von final bringt mehr Sicherheit und Performance und schützt gegen versehentliches
Überschreiben.
Weiterführende Links
Link
finale Klassen und Methoden in Java ist auch eine
Insel
final Instanz- und Klassen-Variablen in Java ist auch eine Insel
final lokale Variablen in Java ist auch eine Insel