Zunächst einmal empfehle ich diesen Artikel: Java: Wann man eine finale Klasse erstellt
Wenn ja, wann verwenden sie es, damit ich es besser verstehen und wissen kann, wann ich es einsetzen muss.
A final
Klasse ist einfach eine Klasse, die kann nicht verlängert werden .
(Das bedeutet nicht, dass sich alle Verweise auf Objekte der Klasse so verhalten würden, als wären sie als final
.)
Wann es sinnvoll ist, eine Klasse als final zu deklarieren, wird in den Antworten zu dieser Frage behandelt:
Wenn Java objektorientiert ist, und Sie eine Klasse deklarieren final
Wird dadurch nicht die Idee, dass Klassen die Eigenschaften von Objekten haben, aufgegeben?
In gewissem Sinne ja.
Indem Sie eine Klasse als endgültig markieren, deaktivieren Sie eine leistungsstarke und flexible Funktion der Sprache für diesen Teil des Codes. Einige Klassen sollten jedoch nicht (und in bestimmten Fällen puede nicht) so konzipiert sein, dass sie die Unterklassenbildung in angemessener Weise berücksichtigen. In diesen Fällen ist es sinnvoll, die Klasse als final zu kennzeichnen, auch wenn dies die OOP einschränkt. (Denken Sie jedoch daran, dass eine finale Klasse immer noch eine andere nicht-finale Klasse erweitern kann).