před dalším přesunem doporučujeme nejprve přečíst statickou proměnnou a konečnou proměnnou. V tomto článku budeme diskutovat o tom, jak můžeme použít konečné Klíčové slovo se statickou proměnnou. V tomto článku uvidíme, jak inicializovat statickou konečnou proměnnou v Javě. Proměnná může být statická a konečná v Javě.
zde je obsah tabulky článku, který se budeme zabývat tímto tématem.
1. Jaká je statická konečná proměnná v Javě?
2. Jak deklarovat statickou konečnou proměnnou?
3. Inicializace statické konečné proměnné?
i) inicializace během deklarace?
ii) inicializace uvnitř statického bloku?
4. Co je statická prázdná konečná proměnná v Javě?
5. Pravidla pro inicializaci statické prázdné konečné proměnné?
6. Skutečný příklad?
jaká je statická konečná proměnná v Javě?
většina z nás již ví, že statická proměnná je deklarována na úrovni třídy. To znamená, že statická proměnná je sdílena se všemi objekty třídy. Pokud provedeme nějakou změnu ve statické proměnné, která odráží i ostatní objekty. Statická proměnná je vždy instanční proměnnou třídy. Statickou proměnnou v rámci metody, bloku nebo konstruktoru nelze deklarovat. Pokud tedy nebudeme inicializovat statickou proměnnou, pak ji JVM inicializuje a poskytne výchozí hodnotu.
ale pokud deklarujeme statickou proměnnou s konečným klíčovým slovem, pak JVM neposkytne výchozí hodnotu. Musíme inicializovat statickou konečnou proměnnou, protože JVM jí neposkytne výchozí hodnotu. Statická konečná proměnná je konstanta času kompilace, protože se načte do paměti, když se třída načte do paměti.
jak deklarovat statickou konečnou proměnnou?
Chcete-li deklarovat statickou konečnou proměnnou, musíme se postarat o dvě věci, jedna deklaruje s konečným klíčovým slovem a druhá je inicializace proměnné. Není povinné inicializovat statickou konečnou proměnnou v době deklarace. Můžeme inicializovat ve statickém bloku také. Pokud ji v době deklarace neinicializujete, nazývá se prázdná statická konečná proměnná.
static final dataType variableName = value;
zde je statické Klíčové slovo, které označuje JVM, proměnná bude skartována pro všechny objekty.
final je klíčové slovo, které označuje JVM pro zacházení s touto proměnnou jako s konečnou proměnnou.
datový typ je typ proměnné, kterou chcete vytvořit.
varaibleName je název proměnné, kterou chcete vytvořit.
Výstup: Výjimkou v době kompilace
Inicializace static final proměnné
V jazyce Java, JVM, zejména se stará o inicializace static final proměnné. Statickou konečnou proměnnou musíme inicializovat hodnotou, jinak kompilátor vyvolá chybu při kompilaci. Ale jak jsme viděli ve výše uvedeném příkladu, statická konečná proměnná může být inicializována pouze jednou.
i) inicializace během deklarace
můžeme inicializovat statickou konečnou proměnnou během deklarace proměnné. Jak víte, statické proměnné se čtou před načtením třídy. Takže by je měla inicializovat dokončení načítání třídy.
výstup: Hodnota static final variable = 5
ii) inicializace uvnitř statického bloku
můžete inicializovat konečné statické proměnné v bloku, ale to by mělo být také statické. Statické konečné proměnné však nelze v konstruktoru přiřadit hodnotu. Musí jim tedy být přiřazena hodnota s jejich prohlášením.
výstup: hodnota statické konečné proměnné = 5
jaká je statická prázdná konečná proměnná v Javě?
jak již víte, statická konečná proměnná může být inicializována pouze jednou. Statickou konečnou proměnnou nelze inicializovat více než jednou. Prázdná statická konečná proměnná je konečná proměnná, která není inicializována během deklarace. Může být inicializován pouze ve statickém bloku.
prázdnou konečnou proměnnou lze inicializovat pouze ve statickém bloku. Java neposkytuje žádný jiný způsob, jak inicializovat prázdnou statickou konečnou proměnnou.
pravidla pro inicializaci statické prázdné konečné proměnné
1. Pokud během deklarace neinicializujete statickou konečnou proměnnou (prázdná statická konečná proměnná), musí být inicializována ve statickém bloku, jinak kompilátor vyvolá výjimku v době kompilace.
2. Statickou konečnou prázdnou proměnnou nelze inicializovat v konstruktoru. Musí být inicializován ve statickém bloku.
reálný příklad
Předpokládejme, že chceme udržovat údaje o osobách. Každá osoba má jméno, adresu, název země atd. Chceme však všem lidem poskytnout společný(statický) a konstantní (konečný) název země. Zde vytváříme statickou konečnou proměnnou a budeme ji inicializovat ve statickém bloku. V tomto příkladu vytvoříme statickou konečnou proměnnou COUNTRYNAME tak, aby během provádění programu zůstala stejná.
Výstup: Jméno Osoby : Ram
Adresa osoby : Indie
Země osoba : Indie
Jméno Osoby : John
Adresa osoby : USA
Země osoba : Indie