final kann Klassen, Mitgliedsvariablen, lokale Variablen und Methoden ändern.
1. Letzte geänderte Mitgliedsvariablen
1. Initialisierung der endgültigen Mitgliedsvariablen
Für endgültig geänderte Variablen initialisiert das System sie standardmäßig nicht auf 0.
Fina-Variableninitialisierungsmethode:
2. endgültige Änderungsmethode
Wenn final zum Ändern einer Methode verwendet wird, bedeutet dies, dass diese Methode nicht von Unterklassen überschrieben werden kann.
3. letzte modifizierte Klasse
Endgültig geänderte Spalten dürfen nicht vererbt werden. Der Compiler behandelt alle seine Methoden während der Verarbeitung als endgültig, sodass endgültige Klassen effizienter sind als gewöhnliche Klassen. Die durch das Schlüsselwort abstract definierte abstrakte Spalte enthält abstrakte Methoden, die durch von ihr geerbte Unterklassen überladen werden müssen, sodass dieselbe Klasse nicht gleichzeitig mit final und abstract geändert werden kann. Aus dem gleichen Grund kann final nicht zum Ändern von Schnittstellen verwendet werden. Endgültige Klassenmethoden können nicht überschrieben werden. Dies bedeutet jedoch nicht, dass die Attributwerte der endgültigen Klassen ebenfalls unveränderlich sind. Wenn Sie den Attributwert einer endgültigen Klasse unveränderlich machen möchten, müssen Sie ihr den endgültigen Modifikator hinzufügen.
Die final-Anweisung kann nur in try/catch-Anweisungen verwendet werden und wird von einem Anweisungsblock begleitet, der angibt, dass diese Anweisung immer irgendwann ausgeführt wird.
Berechnen Sie zunächst den Wert des Ausdrucks nach der Rückgabe und speichern Sie ihn vorübergehend. Berechnen Sie dann den Wert des Ausdrucks nach der Rückgabe und speichern Sie ihn schließlich.
Zu diesem Zeitpunkt wird der zuvor gespeicherte Wert überschrieben. Kehren Sie abschließend zur vorherigen Rückgabe zurück, entnehmen Sie den Wert, aus dem die Variable vorübergehend gespeichert ist, und kehren Sie zurück. Das heißt, dieses Ergebnis wurde erzielt.