Java final

In Java wird final verwendet, wenn man Variablen, Methoden oder Klassen konstant machen möchte.
Der Wert, die Methode und die Klasse können dann nicht erneut überschrieben werden: keine neue Wertzuweisung, kein @Override bei Vererbung und bei Klassen können Methoden und Eigenschaften nicht erweitert werden.

final int MAX_SPEED = 120; // MAX_SPEED kann nicht geändert werden
class Car {
    public final void startEngine() {
        System.out.println("Motor gestartet");
    }
}

class ElectricCar extends Car {
    // startEngine() kann hier nicht überschrieben werden
}
public final class MathUtils {
    // Methoden und Eigenschaften von MathUtils können nicht erweitert werden
}