Klíčový rozdíl - finální vs konečně vs finalizovat v Javě
Final, final a finalize jsou běžné termíny používané v programování v Javě. Finále je klíčové slovo. Lze jej použít pro proměnné, metody nebo třídy. Proměnné deklarované jako konečné by měly být inicializovány pouze jednou. Nelze je změnit. Protože Java je jazyk, který podporuje objektově orientované programování, umožňuje vytvářet třídy z existujících tříd, aby se zlepšila opětovná použitelnost kódu. Někdy může být nutné vyhnout se používání existujících tříd. K tomu lze použít finále. V programování mohou nastat chyby a je důležité je řešit, aby bylo možné program správně spustit. Finalizace je metoda volaná garbage collectorem. Všechny tyto pojmy mají tedy odpovídajícím způsobem různé významy. Finále je klíčové slovo, které zabrání změně proměnných, vyhne se přepsání metody a vyhne se rozšíření tříd. Konečně je blok ve zpracování výjimek, který provede, zda je vyvolána výjimka nebo ne. Finalizace je metoda, kterou volá garbage collector, než objekt úplně zničí. To je klíčový rozdíl konečně konečně a finalizovat v Javě.
OBSAH
1. Přehled a klíčový rozdíl
2. Co je finální v Javě
3. Co je konečně v Javě
4. Co je finalizováno v Javě
5. Podobnosti mezi final final a finalizovat v Javě
6. Porovnání bok po boku - final final vs finalize v Javě v tabulkové formě
7. Shrnutí
Co je konečné v Javě?
Finále je klíčové slovo v Javě. Protože Java podporuje objektově orientované programování, mohou podtřídy používat proměnné a metody již existující třídy. Již existující třída je nadtřídou, zatímco nová třída je podtřídou. Pokud chce programátor zabránit proměnné přístupné pro jiné třídy, může proměnnou prohlásit jako „konečnou“. Předpokládejme například, že existuje proměnná jako p. Je deklarován jako konečný a inicializuje hodnotu 10. např. Final int p = 10. Pokud se hodnota p znovu změní na 20, způsobí to chybu kompilace. Konečné klíčové slovo brání ve změně hodnoty proměnné.
Třída může použít metodu, která je již v existující třídě. Předpokládejme, že existuje třída s názvem B, která má metodu display (). Nová třída je C a rozšiřuje třídu B. Pokud má třída C také metodu nazvanou display (), je původní metoda třídy B display () přepsána. Pokud chce programátor zabránit přepsání metody, může klíčové slovo použít konečně. např. final void display () {}. Provedení konečné metody zajistí, že se její funkce nikdy nezmění.
Obrázek 01: finální, konečná a finální
Je také možné použít konečné klíčové slovo pro třídu. Nová třída nemůže dědit proměnné a metody finální třídy. To je užitečné pro zvýšení bezpečnosti. Protože třídě brání v použití podtříd, jsou data chráněna.
Co je konečně v Javě?
V programování mohou být chyby. Chyby mohou způsobit nesprávné výstupy nebo ukončit provádění programu. Je důležité použít nějaký druh mechanismu k zabránění těmto neočekávaným výsledkům. Chyby mohou být dvou typů. Jsou to kompilované časové chyby a chyby za běhu. K chybám kompilace dochází v důsledku syntaktických chyb. Některé běžné chyby při kompilaci chybí středník, chybí složené závorky, chybně napsané identifikátory, klíčová slova a nedeklarované proměnné. Kompilátor nevytvoří soubor.class, dokud nebudou tyto chyby opraveny.
Někdy mohou existovat programy, které se správně kompilují, ale dávají nesprávný výstup. Říká se jim runtime chyby. Některé běžné runtime chyby spočívají v ponoru na celé číslo nulou a v přístupu k prvku, který je mimo hranice pole. Tyto chyby nezpůsobí chybu v době kompilace, ale výstup je nesprávný. Výjimkou je podmínka způsobená runtime chybou v programu.
Když dojde k chybě za běhu, vytvoří Java objekt výjimky a hodí jej. Pokud objekt výjimky není správně zachycen, zobrazí se chybová zpráva a program se ukončí. Pokud programátor chce pokračovat v provádění programu se zbytkem kódu, měl by zachytit objekt výjimky a zobrazit zprávu potřebnou pro nápravné opatření. Tento proces se nazývá zpracování výjimek.
V Javě se try používá pro kód, který pravděpodobně způsobí chybu a vyvolá výjimku. Úlovek se používá ke zpracování výjimky vyvolané blokem try. Může existovat několik prohlášení o úlovku. Příkazy final lze použít ke zpracování výjimky, která není zachycena žádným z předchozích příkazů catch. Nakonec blok provede, zda je vyvolána výjimka nebo ne. Viz uvedený příklad.
int p = 10, q = 5, r = 5;
int odpověď;
Snaž se{
odpověď = p / (q - r);
}
catch (ArithmeticException e) {
System.out.println („Děleno nulou“);
}
Konečně{
System.out.println („Konečný blok je spuštěn“);
}
Podle výše uvedeného příkladu je hodnota p vydělena nulou a způsobí to výjimku. Proto je zachycen příkazem catch. Zpráva se vytiskne, vydělená nulou. Konečný blok se spustí bez ohledu na to, zda došlo k výjimce. Po zprávě Děleno nulou se zobrazí zpráva uvnitř bloku finally. Proto se konečně používá blok při zpracování výjimek.
Co je finalizace v Javě?
V OOP se objekty vytvářejí pomocí tříd. Metoda konstruktoru může inicializovat objekt, když je deklarován. Proces je známý jako inicializace. Java má také koncept zvaný finalizace. Modul runtime Java je automatický sběrač odpadků. Automaticky uvolňuje paměťové prostředky používané objekty. Garbage collector volá tuto metodu před zničením objektu.
Některé objekty mohou obsahovat jiné než objektové prostředky. Jedním příkladem je deskriptor souboru. V těchto situacích garbage collector volá metodu finalize. např. finalize (). Tato metoda provádí vyčištění zpracování těsně před odebráním objektu.
Jaká je podobnost mezi final final a finalize v Javě?
V programování Java jsou použity všechny final, final a finalize v Javě
Jaký je rozdíl mezi final final a finalize v Javě?
Rozdílný článek uprostřed před tabulkou
finální vs konečně vs finalizovat |
|
finále | Finále je klíčové slovo v Javě, které zabrání změně proměnných, vyhne se přepsání metody a vyhne se rozšíření tříd. |
Konečně | Konečně je blok ve zpracování výjimek Java, který provede, zda je výjimka vyvolána nebo ne. |
dokončit | Finalizace je metoda v Javě, kterou volá garbage collector, než objekt úplně zničí. |
Použitelnost | |
finále | Finále je použitelné pro proměnné, metody a třídy. |
Konečně | Konečně lze použít bloky try a catch. |
dokončit | Finalizace je použitelná pro objekty. |
Shrnutí - finální vs konečně vs finalizovat v Javě
Final, final a finalize jsou běžné pojmy používané v programování v Javě. Jejich slova se zdají stejná, ale mají rozdíl. Finále je klíčové slovo, které zabrání změně proměnných, vyhne se přepsání metody a vyhne se rozšíření tříd. Konečně je blok ve zpracování výjimek, který provede, zda je vyvolána výjimka nebo ne. Finalizace je metoda, kterou volá garbage collector, než úplně zničí objekt. To je rozdíl mezi final, final a finalize v Java Programming.
Stáhněte si PDF finální vs konečně vs finalizujte v Javě
Můžete si stáhnout PDF verzi tohoto článku a použít ji pro offline účely podle citace. Stáhněte si verzi PDF zde: Difference Betweeen final konečně a dokončete v Javě