Kľúčový rozdiel – statické a konečné v jazyku Java
Každý programovací jazyk má špecifickú syntax. Programátor by sa mal pri písaní programov riadiť týmito syntaxami. Kľúčové slová programovacích jazykov majú špecifický význam podľa úloh. Sú poskytované programovacím jazykom a nemožno ich použiť pre užívateľom definované premenné, metódy, triedy atď. Statické a konečné sú dve kľúčové slová v Jave. Tento článok pojednáva o rozdiele medzi statickým a konečným v jazyku Java. Kľúčový rozdiel medzi statickým a konečným v Java je v tom, že statický sa používa na definovanie člena triedy, ktorý možno použiť nezávisle od akéhokoľvek objektu triedy, zatiaľ čo final sa používa na deklarovanie konštantnej premennej alebo metódy, ktorú nemožno prepísať, alebo triedy, ktorá nemožno dediť.
Čo je statické v jazyku Java?
Trieda pozostáva z dátových členov (atribútov) a metód. Aby bolo možné volať metódy, mal by existovať objekt tejto špecifickej triedy. Keď je metóda deklarovaná ako statická, nie je potrebné vytvárať objekt na volanie tejto metódy. Metódu je možné volať pomocou názvu triedy. Pozrite si program nižšie.
Obrázok 01: Program Java so statickými premennými a statickou metódou
Podľa vyššie uvedeného programu obsahuje trieda A číselnú premennú a spôsob zobrazenia. Obaja sú statickými členmi. Preto nie je potrebné vytvárať objekt na prístup k premennej čísla a metóde zobrazenia. Programátor môže priamo napísať názov triedy, aby vytlačil číslo a vyvolal zobrazenie metódy. Takže nie je potrebné vytvárať inštanciu objektu. Ak číselná premenná a metóda zobrazenia nie sú statické, mal by existovať objekt typu A.
Obrázok 02: Použitie statického bloku
Vyššie uvedený program obsahuje statický blok a hlavnú metódu. Statický blok sa volá pri načítaní triedy. Preto sa príkaz v statickom bloku vykoná pred príkazom v hlavnom bloku. Ak existuje veľa statických blokov, vykonajú sa postupne.
Čo je konečné v jazyku Java?
V programe môžu byť premenné rôznych typov. Ak existuje premenná ako int x=1; neskôr v programe môže byť hodnota premennej zmenená na inú hodnotu. Premennú, ktorá je deklarovaná ako konečná a inicializovaná hodnotou, nemožno neskôr v programe zmeniť.
Obrázok 03: Program s konečnou premennou a dedičnosťou
Podľa vyššie uvedeného programu je x konečná premenná. Má priradenú hodnotu 5. Nedá sa zmeniť inou hodnotou, pretože je deklarovaná ako konečná. Java podporuje objektovo orientované programovanie (OOP). Jedným z pilierov OOP je polymorfizmus. Jeden typ polymorfizmu je prvoradý. Trieda A má metódu zobrazenia. Trieda B rozširuje triedu A a má svoj vlastný spôsob zobrazenia. Pri vytváraní objektu typu B a volaní metódy zobrazenia vytlačí ako výstup „B“. Metóda zobrazenia triedy A je prepísaná metódou zobrazenia triedy B.
Ak programátor, čomu sa má vyhnúť prepísaniu metódy, môže pre túto metódu použiť posledné kľúčové slovo. Ak je metóda zobrazenia v triede A konečná, metóda zobrazenia v B zobrazí chybu, pretože túto metódu nemožno prepísať.
Obrázok 04: posledné kľúčové slovo v metóde
Ďalším pilierom OOP je dedičnosť. Pomáha znovu použiť už existujúci kód. Nová trieda sa môže rozšíriť z existujúcej triedy a používať dátové členy a metódy existujúcej triedy. Ak je potrebné zastaviť dedenie triedy, programátor môže použiť kľúčové slovo „final“. Pozrite si program nižšie.
Obrázok 05: posledné kľúčové slovo v triede
Podľa vyššie uvedeného programu je trieda A vyhlásená za konečnú. Keď trieda B rozširuje A, dáva chybu, pretože trieda A je deklarovaná ako konečná. Nemôže byť zdedený inými triedami.
Aká je podobnosť medzi statickou a konečnou verziou v jazyku Java?
Statické aj konečné sú kľúčové slová v jazyku Java
Aký je rozdiel medzi statickým a finálnym v jazyku Java?
statické vs. finále v jazyku Java |
|
Statické kľúčové slovo označuje, že k členskej premennej alebo metóde je možné pristupovať bez potreby vytvorenia inštancie triedy, do ktorej patrí. | Posledné kľúčové slovo označuje entitu, ktorú možno priradiť iba raz. |
Premenné | |
Statické premenné je možné reinicializovať. | Konečné premenné nie je možné znova inicializovať. |
Metódy | |
Môže byť volané inými statickými metódami a pristupovať len k statickým členom triedy. | Konečné metódy nemožno prepísať. |
Trieda | |
Statický objekt triedy nemožno vytvoriť. Obsahuje iba statických členov. | Poslednú triedu nemôžu zdediť iné triedy. |
Blokovať | |
Statické kľúčové slovo možno použiť v bloku. | Posledné kľúčové slovo sa nepoužíva s blokom. |
Zhrnutie – statické verzus konečné v jazyku Java
Tento článok pojednával o dvoch kľúčových slovách v jazyku Java, ako je statické a konečné. Rozdiel medzi statickým a konečným v jazyku Java je v tom, že statický sa používa na definovanie člena triedy, ktorý sa dá použiť nezávisle od akéhokoľvek objektu triedy, zatiaľ čo final sa používa na deklarovanie konštantnej premennej alebo metódy, ktorú nemožno prepísať, alebo triedy, ktorú nemožno použiť. byť zdedený.