zanim przejdziemy dalej, zalecamy najpierw zapoznanie się ze zmienną statyczną i zmienną końcową. W tym artykule omówimy, w jaki sposób możemy użyć końcowego słowa kluczowego ze zmienną statyczną. W tym artykule zobaczymy, jak zainicjować statyczną zmienną końcową w Javie. Zmienna może być statyczna i końcowa w Javie.
oto treść artykułu, który omówimy w tym temacie.
1. Co to jest statyczna zmienna końcowa w Javie?
2. Jak zadeklarować statyczną zmienną końcową?
3. Inicjalizacja statycznej zmiennej końcowej?
i) inicjalizacja podczas deklaracji?
ii) inicjalizacja wewnątrz bloku statycznego?
4. Co to jest statyczna pusta zmienna końcowa w Javie?
5. Zasady inicjalizacji statycznej pustej zmiennej końcowej?
6. Prawdziwy przykład?
co to jest końcowa zmienna statyczna w Javie?
większość z nas już wie, że zadeklarowana zmienna statyczna jest na poziomie klasy. To znaczy, że zmienna statyczna jest współdzielona ze wszystkimi obiektami klasy. Jeśli dokonamy jakiejkolwiek zmiany w zmiennej statycznej, która odzwierciedla również inne obiekty. Zmienna statyczna jest zawsze zmienną instancji klasy. Nie Można zadeklarować zmiennej statycznej w metodzie, bloku lub konstruktorze. Jeśli więc nie zainicjalizujemy zmiennej statycznej, to JVM zainicjalizuje ją i poda wartość domyślną.
ale jeśli deklarujemy zmienną statyczną ze słowem kluczowym final, to JVM nie dostarczy domyślnej wartości. Musimy zainicjować statyczną zmienną końcową, ponieważ JVM nie dostarczy jej wartości domyślnej. Statyczna zmienna końcowa jest stałą czasu kompilacji, ponieważ ładuje się w pamięci, gdy Klasa ładuje się do pamięci.
jak zadeklarować statyczną zmienną końcową?
aby zadeklarować statyczną zmienną końcową, musimy zadbać o dwie rzeczy, jedna deklaruje słowem kluczowym final, a druga jest inicjalizacją zmiennej. Nie jest obowiązkowe inicjowanie statycznej zmiennej końcowej w momencie deklaracji. Możemy zainicjować go również w bloku statycznym. Jeśli nie inicjujesz jej w momencie deklaracji, jest ona nazywana pustą statyczną zmienną końcową.
static final dataType variableName = value;
tutaj static jest słowem kluczowym, które wskazuje JVM, zmienna będzie niszczona dla wszystkich obiektów.
final jest słowem kluczowym, które wskazuje, że JVM traktuje tę zmienną jako zmienną końcową.
dataType jest typem zmiennej, którą chcesz utworzyć.
varaibleName jest nazwą zmiennej, którą chcesz utworzyć.
Wyjście: wyjątek podczas kompilacji
Inicjalizacja statycznej zmiennej końcowej
w Javie JVM szczególnie zajmuje się inicjalizacją statycznej zmiennej końcowej. Musimy zainicjalizować statyczną zmienną końcową wartością, w przeciwnym razie kompilator wyrzuci błąd czasu kompilacji. Ale jak widzieliśmy w powyższym przykładzie statyczna zmienna końcowa może być zainicjowana tylko raz.
i) inicjalizacja podczas deklaracji
podczas deklaracji zmiennej możemy zainicjować statyczną zmienną końcową. Jak wiadomo, zmienne statyczne są odczytywane przed załadowaniem klasy. Więc należy zainicjować ich zakończenie ładowania klasy.
: Wartość statycznej zmiennej końcowej = 5
ii) inicjalizacja wewnątrz bloku statycznego
można inicjalizować zmienną końcową w bloku statycznym, ale powinna być również statyczna. Ale statyczne zmienne końcowe nie mogą być przypisane do wartości w konstruktorze. Tak więc, należy im przypisać wartość ze swoją deklaracją.
Wyjście: wartość statycznej zmiennej końcowej = 5
co to jest statyczna pusta zmienna końcowa w Javie?
jak już wiesz, statyczna zmienna końcowa może być zainicjalizowana tylko raz. Nie można zainicjalizować statycznej zmiennej końcowej więcej niż jeden raz. Pusta statyczna zmienna końcowa jest zmienną końcową, która nie jest inicjowana podczas deklaracji. Może być inicjowany tylko w bloku statycznym.
pusta zmienna końcowa może być zainicjalizowana tylko w bloku statycznym. Java nie zapewnia innego sposobu inicjalizacji pustej statycznej zmiennej końcowej.
Zasady inicjalizacji statycznej pustej zmiennej końcowej
1. Jeśli nie inicjujesz statycznej zmiennej końcowej podczas deklaracji (pusta statyczna zmienna końcowa), to musi ona zostać zainicjowana w bloku statycznym, w przeciwnym razie kompilator wyrzuci wyjątek podczas kompilacji.
2. Statyczna końcowa pusta zmienna nie może być zainicjalizowana w konstruktorze. Musi być zainicjowany w bloku statycznym.
przykład z prawdziwego zdarzenia
Załóżmy, że chcemy zachować dane osób. Każda osoba ma imię i nazwisko, adres, nazwę kraju itp. Ale chcemy podać wspólną (statyczną) i stałą(ostateczną) nazwę kraju nazwa kraju dla wszystkich osób. Tutaj tworzymy statyczną zmienną końcową i będziemy ją inicjalizować w bloku statycznym. W tym przykładzie utworzymy statyczną zmienną końcową COUNTRYNAME, tak aby pozostała taka sama podczas wykonywania programu.
Wyjście: imię osoby : Ram
adres osoby: Indie
kraj osoby : Indie
imię osoby : John
adres osoby: USA
kraj osoby: Indie