Rozdíl Mezi Statickým A Konečným V Javě

Obsah:

Rozdíl Mezi Statickým A Konečným V Javě
Rozdíl Mezi Statickým A Konečným V Javě

Video: Rozdíl Mezi Statickým A Konečným V Javě

Video: Rozdíl Mezi Statickým A Konečným V Javě
Video: Programování v Javě - Cykly While a For #6 2024, Smět
Anonim

Klíčový rozdíl - statické vs. konečné v Javě

Každý programovací jazyk má specifickou syntaxi. Programátor by měl při psaní programů dodržovat tyto syntaxe. Klíčová slova programovacích jazyků mají specifické úkoly podle úkolů. Poskytují je programovací jazyk a nelze je použít pro uživatelem definované proměnné, metody, třídy atd. Statická a konečná jsou dvě klíčová slova v Javě. Tento článek pojednává o rozdílech mezi statickým a konečným v Javě. Klíčový rozdíl mezi statickým a finálním v Javě spočívá v tom, že statický se používá k definování člena třídy, který lze použít nezávisle na jakémkoli objektu třídy, zatímco final se používá k deklaraci konstantní proměnné nebo metody, kterou nelze přepsat, nebo třídy, která nelze zdědit.

OBSAH

1. Přehled a klíčový rozdíl

2. Co je statické v Javě

3. Co je konečné v Javě

4. Podobnosti mezi statickým a konečným v Javě

5. Porovnání vedle sebe - statické vs. konečné v Javě v tabulkové formě

6. Shrnutí

Co je statické v Javě?

Třída se skládá z datových členů (atributů) a metod. Aby bylo možné volat metody, měl by existovat objekt dané konkrétní třídy. Když je metoda deklarována jako statická, není nutné vytvořit objekt pro volání této metody. Metodu lze volat pomocí názvu třídy. Viz níže uvedený program.

Rozdíl mezi statickým a konečným v Javě
Rozdíl mezi statickým a konečným v Javě

Obrázek 01: Program Java se statickými proměnnými a statickou metodou

Podle výše uvedeného programu obsahuje třída A číselnou proměnnou a způsob zobrazení. Oba jsou statické členy. Proto není nutné vytvářet objekt pro přístup k proměnné čísla a metodě zobrazení. Programátor může přímo napsat název třídy, aby vytiskl číslo a vyvolal zobrazení metody. Není tedy nutné vytvořit instanci objektu. Pokud jsou proměnná čísla a metoda zobrazení nestatické, pak by měl existovat objekt typu A.

Rozdíl mezi statickým a konečným v Java Figure 02
Rozdíl mezi statickým a konečným v Java Figure 02

Obrázek 02: Použití statického bloku

Výše uvedený program obsahuje statický blok a hlavní metodu. Statický blok se volá při načtení třídy. Proto se příkaz ve statickém bloku provede před příkazem v hlavním bloku. Pokud existuje mnoho statických bloků, spustí se postupně.

Co je konečné v Javě?

V programu mohou být proměnné různých typů. Pokud existuje proměnná jako int x = 1; později v programu lze tuto hodnotu proměnné změnit na jinou hodnotu. Proměnnou, která je deklarována jako konečná a inicializována hodnotou, nelze později v programu změnit.

Rozdíl mezi statickým a konečným v Java Figure 03
Rozdíl mezi statickým a konečným v Java Figure 03

Obrázek 03: Program s konečnou proměnnou a dědičností

Podle výše uvedeného programu je x konečná proměnná. Je jí přiřazena hodnota 5. Nelze ji změnit, protože je deklarována jako konečná. Java podporuje objektově orientované programování (OOP). Jedním pilířem OOP je polymorfismus. Jeden typ polymorfismu převažuje. Třída A má metodu zobrazení. Třída B rozšiřuje třídu A a má vlastní metodu zobrazení. Při vytváření objektu typu B a volání metody zobrazení vytiskne jako výstup „B“. Metoda zobrazení třídy A je přepsána metodou zobrazení třídy B.

Pokud programátor nemá zabránit přepsání metody, může pro tuto metodu použít konečné klíčové slovo. Pokud je metoda zobrazení ve třídě A konečná, způsob zobrazení v B způsobí chybu, protože tuto metodu nelze přepsat.

Rozdíl mezi statickým a konečným v Java Figure 04
Rozdíl mezi statickým a konečným v Java Figure 04

Obrázek 04: Konečné klíčové slovo v metodě

Dalším pilířem OOP je dědičnost. Pomáhá znovu použít již existující kód. Nová třída se může rozšířit z existující třídy a používat datové členy a metody existující třídy. Pokud je nutné ukončit dědění třídy, může programátor použít klíčové slovo „final“. Viz níže uvedený program.

Ke3y Rozdíl mezi statickým a konečným v Javě
Ke3y Rozdíl mezi statickým a konečným v Javě

Obrázek 05: Konečné klíčové slovo ve třídě

Podle výše uvedeného programu je třída A prohlášena za konečnou. Když třída B rozšiřuje A, dává chybu, protože třída A je deklarována jako konečná. Nelze jej zdědit jinými třídami.

Jaká je podobnost mezi statickým a konečným v Javě?

Statické i konečné jsou klíčová slova v Javě

Jaký je rozdíl mezi statickým a konečným v Javě?

Rozdílný článek uprostřed před tabulkou

static vs final v Javě

Statické klíčové slovo označuje, že k členské proměnné nebo metodě lze přistupovat bez nutnosti vytvoření instance třídy, do které patří. Konečné klíčové slovo označuje entitu, kterou lze přiřadit pouze jednou.
Proměnné
Statické proměnné lze znovu inicializovat. Konečné proměnné nelze znovu inicializovat.
Metody
Lze volat jinými statickými metodami a přistupovat pouze ke statickým členům třídy. Konečné metody nelze přepsat.
Třída
Statický objekt třídy nelze vytvořit. Obsahuje pouze statické členy. Konečnou třídu nelze zdědit jinými třídami.
Blok
Statické klíčové slovo lze použít v bloku. Konečné klíčové slovo se u bloku nepoužívá.

Shrnutí - statické vs konečné v Javě

Tento článek pojednával o dvou klíčových slovech v Javě, jako jsou statická a konečná. Rozdíl mezi static a final v Javě spočívá v tom, že static se používá k definování člena třídy, který lze použít nezávisle na jakémkoli objektu třídy, zatímco final se používá k deklaraci konstantní proměnné nebo metody, kterou nelze přepsat, nebo třídy, která nemůže být zděděn.

Doporučená: