Junior
Ko nozīmē atslēgvārds 'final' Java programmēšanas valodā?
sobes.tech AI
Atbilde no AI
Java final atslēgas vārds tiek izmantots, lai norādītu, ka mainīgais, metode vai klase nevar tikt mainīta:
-
finalmainīgais:finaldeklarēts mainīgais var tikt piešķirts tikai vienu reizi. Pēc piešķiršanas tas nevar tikt mainīts:- Primitīvu tipu gadījumā
finalmainīgā vērtība ir konstante: - Saistīto tipu gadījumā
finalmainīgais nozīmē, ka saite uz objektu nevar tikt mainīta, bet objekta stāvoklis (tās lauki) var tikt mainīti (ja tikai lauki navfinal):
final int MAX_VALUE = 100; // final primitīvs mainīgais final List<String> names = new ArrayList<>(); // final saite names.add("Alice"); // OK // names = new ArrayList<>(); // Kompilācijas kļūda - saite nevar tikt pārrakstīta -
finalmetode:- Metode, kas deklarēta kā
final, nevar tikt pārrakstīta (overridden) apakšklasēs: - Tas tiek izmantots, lai novērstu nevēlamas izmaiņas uzvedībā mantošanas hierarhijā:
class Parent { final void display() { System.out.println("This is a final method."); } } class Child extends Parent { // @Override void display() { } // Kompilācijas kļūda - `final` metode nevar tikt pārrakstīta } - Metode, kas deklarēta kā
-
finalklase:- Klase, kas deklarēta kā
final, nevar būt apakšklašu (nevar mantošana): - Tas tiek izmantots, lai nodrošinātu, ka klase nav maināma un tās funkcionalitāte netiek paplašināta:
final class ImmutableClass { private final int value; public ImmutableClass(int value) { this.value = value; } } // class TryingToExtend extends ImmutableClass { } // Kompilācijas kļūda - `final` klase nevar mantoēt - Klase, kas deklarēta kā