Razlika između finally finally i finalize u Javi

Sadržaj:

Razlika između finally finally i finalize u Javi
Razlika između finally finally i finalize u Javi

Video: Razlika između finally finally i finalize u Javi

Video: Razlika između finally finally i finalize u Javi
Video: Hrvatski jezik 3.r SŠ - Interpretacija i analiza Shakespeareova Hamleta 2024, Srpanj
Anonim

Ključna razlika – finalno vs finally vs finalize u Javi

Konačni, finally i finalize uobičajeni su izrazi koji se koriste u Java programiranju. Finale je ključna riječ. Može se koristiti za varijable, metode ili klase. Varijable deklarirane kao konačne trebaju se inicijalizirati samo jednom. Ne mogu se promijeniti. Budući da je Java jezik koji podržava objektno orijentirano programiranje, omogućuje stvaranje klasa iz postojećih klasa kako bi se poboljšala ponovna upotreba koda. Ponekad će možda biti potrebno izbjegavati korištenje postojećih klasa. Za to se može koristiti final. U programiranju može doći do pogrešaka, a važno ih je ispraviti kako bi se program ispravno izvršio. Finalize je metoda koju poziva skupljač smeća. Dakle, svi ovi izrazi imaju različita značenja u skladu s tim. Final je ključna riječ koja sprječava promjenu varijabli, izbjegava nadjačavanje metoda i izbjegava proširenje klasa. Finally je blok u rukovanju iznimkama, koji će se izvršiti bez obzira je li iznimka izbačena ili ne. Finalize je metoda koju poziva skupljač smeća prije nego potpuno uništi objekt. To je ključna razlika finally finally i finalize u Javi.

Što je konačno u Javi?

Final je ključna riječ u Javi. Budući da Java podržava objektno orijentirano programiranje, podklase mogu koristiti varijable i metode već postojeće klase. Već postojeća klasa je superklasa dok je nova klasa podklasa. Ako programer želi spriječiti pristup varijabli drugim klasama, može deklarirati varijablu kao "konačnu". Na primjer, pretpostavimo da postoji varijabla kao p. Deklariše se kao konačan i inicijalizira vrijednost 10.npr. final int p=10. Ako se vrijednost p ponovno promijeni na 20, to će uzrokovati pogrešku tijekom kompajliranja. Zadnja ključna riječ sprječava promjenu vrijednosti varijable.

Klasa može koristiti metodu koja je već u postojećoj klasi. Pretpostavimo da postoji klasa B koja ima metodu display(). Nova klasa je C i proširuje klasu B. Ako klasa C također ima metodu koja se zove display(), tada je originalna metoda klase B display() nadjačana. Ako programer želi izbjeći nadjačavanje metode, tada može koristiti ključnu riječ finally. npr. konačni void display(){ }. Učiniti metodu konačnom osigurava da se funkcionalnost metode nikada neće promijeniti.

Razlika između finally finally i finalize u Javi
Razlika između finally finally i finalize u Javi

Slika 01: finale, finalize i finalize

Također je moguće koristiti konačnu ključnu riječ za klasu. Nova klasa ne može naslijediti varijable i metode konačne klase. Ovo je korisno za povećanje sigurnosti. Budući da podklase sprječavaju korištenje klase, podaci su zaštićeni.

Što je konačno u Javi?

U programiranju može biti grešaka. Pogreške mogu uzrokovati netočne rezultate ili prekinuti izvođenje programa. Važno je koristiti neku vrstu mehanizma za sprječavanje ovih neočekivanih rezultata. Pogreške mogu biti dvije vrste. To su greške vremena kompajliranja i pogreške vremena izvođenja. Pogreške u vremenu kompajliranja javljaju se zbog sintaktičkih pogrešaka. Neke uobičajene pogreške tijekom kompajliranja su nedostatak točke i zareza, nedostatak vitičastih zagrada, pogrešno napisani identifikatori, ključne riječi i nedeklarisane varijable. Kompajler neće stvoriti.class datoteku dok se ove pogreške ne poprave.

Ponekad mogu postojati programi koji se ispravno kompiliraju, ali daju pogrešan izlaz. Zovu se pogreške tijekom izvođenja. Neke uobičajene pogreške prilikom izvođenja su spuštanje cijelog broja za nulu i pristupanje elementu koji je izvan granica polja. Ove pogreške neće uzrokovati pogrešku tijekom kompajliranja, ali izlaz je netočan. Iznimka je stanje koje je uzrokovano pogreškom vremena izvođenja u programu.

Kada postoji greška u vremenu izvođenja, Java stvara objekt iznimke i izbacuje ga. Ako objekt iznimke nije ispravno uhvaćen, prikazat će poruku o pogrešci i prekinut će program. Ako programer želi nastaviti izvršavanje programa s ostatkom koda, trebao bi uhvatiti objekt iznimke i prikazati potrebnu poruku za korektivnu radnju. Ovaj proces je poznat kao rukovanje iznimkama.

U Javi, try se koristi za kod koji će vjerojatno uzrokovati pogrešku i izbaciti iznimku. Catch se koristi za rukovanje iznimkom koju je izbacio try blok. Može postojati više catch izjava. Naredbe finally mogu se koristiti za obradu iznimke koja nije uhvaćena nijednom od prethodnih catch naredbi. Blok finally će se izvršiti bez obzira na to je li iznimka izbačena ili ne. Pogledajte dati primjer.

int p=10, q=5, r=5;

int odgovor;

probaj{

odgovor=p / (q – r);

}

catch (ArithmeticException e){

System.out.println(“Podijeljeno nulom”);

}

konačno{

System.out.println(“Konačni blok je izvršen”);

}

Prema gornjem primjeru, vrijednost p je podijeljena s nulom i to će izazvati iznimku. Stoga je uhvaćen izjavom o ulovu. Ispisat će poruku, podijeljenu s nulom. Blok finally će se izvršiti neovisno o tome dogodi li se iznimka ili ne. Nakon poruke Divided by zero prikazat će se poruka unutar finally bloka. Stoga je finally blok koji se koristi u rukovanju iznimkama.

Što je finalize u Javi?

U OOP-u, objekti se stvaraju pomoću klasa. Metoda konstruktora može inicijalizirati objekt kada je deklariran. Proces je poznat kao inicijalizacija. Java također ima koncept koji se zove finalizacija. Java runtime je automatski sakupljač smeća. Automatski oslobađa memorijske resurse koje koriste objekti. Skupljač smeća poziva ovu metodu prije uništavanja objekta.

Neki objekti mogu sadržavati resurse koji nisu objekti. Jedan primjer je deskriptor datoteke. U tim situacijama sakupljač smeća poziva metodu finalize. npr. finalizirati(). Ova metoda izvodi obradu čišćenja neposredno prije nego što se objekt skupi u otpad.

Koja je sličnost između final finally i finalize u Javi?

Sve finale, finally i finalize u Javi koriste se u Java programiranju

Koja je razlika između finally finally i finalize u Javi?

finale vs finally vs finalize

konačno Final je ključna riječ u Javi koja sprječava promjenu varijabli, izbjegava nadjačavanje metode i izbjegava proširenje klasa.
konačno Finaly je blok u rukovanju iznimkama u Javi, koji će se izvršiti bez obzira je li iznimka izbačena ili ne.
finaliziraj Finalizacija je metoda u Javi koju poziva skupljač smeća prije nego potpuno uništi objekt.
Primjenjivost
konačno Konačni je primjenjiv za varijable, metode i klase.
konačno Konačno je primjenjivo s blokovima pokušaj i uhvati.
finaliziraj Dovršavanje je primjenjivo za objekte.

Sažetak – finally vs finally vs finalize u Javi

Konačni, finally i finalize uobičajeni su izrazi koji se koriste u Java programiranju. Njihove se riječi čine istima, ali imaju razliku. Final je ključna riječ koja sprječava promjenu varijabli, izbjegava nadjačavanje metoda i izbjegava proširenje klasa. Finally je blok u rukovanju iznimkama, koji će se izvršiti bez obzira je li iznimka izbačena ili ne. Finalize je metoda koju poziva skupljač smeća prije nego potpuno uništi objekt. To je razlika između final, finally i finalize u Java programiranju.

Preuzmite PDF finalno vs finally vs finalize u Javi

Možete preuzeti PDF verziju ovog članka i koristiti ga za izvanmrežne svrhe prema napomeni o citatu. Preuzmite PDF verziju ovdje: Razlika između finally finally i finalize u Javi

Preporučeni: