Razlika između pogreške i iznimke u Javi

Autor: Laura McKinney
Datum Stvaranja: 2 Travanj 2021
Datum Ažuriranja: 6 Svibanj 2024
Anonim
Difference between Exception and Error
Video: Difference between Exception and Error

Sadržaj


"Bacljiv" djeluje kao korijen Java-ove hijerarhije pogreške i iznimke. "Pogreška" je kritično stanje koje se ne može riješiti kodom programa. "Izuzetak" je iznimna situacija koja se može riješiti kodom programa. Značajna razlika između pogreške i iznimke je ta greška nastaje zbog nedostatka resursa sustava i izuzetak je zbog vašeg koda. Ispitajmo ostale razlike između pogreške i iznimke zajedno s usporednim grafikonomom.

  1. Usporedni grafikon
  2. definicija
  3. Ključne razlike
  4. Zaključak

Usporedni grafikon

Osnove za usporedbugreškaizuzetak
Osnovni, temeljniDo pogreške je došlo zbog nedostatka resursa sustava.Iznimka je zbog koda.
OporavakPogreška je nepopravljiva.Iznimka je nadoknadiva.
ključne riječiProgramskim kodom ne možete srediti pogrešku.Iznimke se obrađuju pomoću tri ključne riječi "probati", "uhvatiti" i "baciti".
posljedice
Nakon otkrivanja pogreške program će se prekinuti nenormalno.Kao otkrivena iznimka, ključna riječ "baci" i "uhvati" baci se na nju i shodno tome.
vrste Pogreške su klasificirane kao neprovjerena vrsta.Izuzeci su klasificirani kao provjereni ili neprovjereni tip.
Paket U Javi su pogreške definirane paketom "java.lang.Error".U Javi su iznimke definirane u "java.lang.Exception".
PrimjerOutOfMemory, StackOverFlow.Provjerene iznimke: NoSuchMethod, ClassNotFound.
Neprovjerene iznimke: NullPointer, IndexOutOfBounds.


Definicija pogreške

greška"Je potklasa ugrađene klase" Throwable ". Pogreške su kritična stanja koja se javljaju zbog nedostatka resursa sustava, a njima se ne može upravljati kodom programa. Pogreške se ne mogu sanirati ni na koji način jer ih se ne može stvoriti, baciti, uhvatiti ili odgovoriti. Do pogrešaka dolazi zbog katastrofalnog kvara koji obično ne može riješiti vaš program.

Pogreške su uvijek neprovjerenog tipa, jer prevodilac nema saznanja o njenom pojavljivanju. Pogreške se uvijek pojavljuju u radnom okruženju. Pogreška se može objasniti pomoću primjera, program ima pogrešku prepunjenosti snopa, grešku van memorije ili pad sustava, ova vrsta pogreške je zbog sustava. Kôd nije odgovoran za takve pogreške. Posljedica pojave pogreške je da se program abnormalno prekida.

Definicija izuzeća

"Izuzetak" je također podrazred ugrađene klase "Throwable". Izuzeci su iznimni uvjeti koji se javljaju u runtime okruženju. U većini slučajeva izuzeća su uzrokovana kodom našeg programa. Ali, iznimke može podnijeti sam program, jer se iznimke mogu povratiti. Iznimke se obrađuju pomoću tri ključne riječi "probati", "uhvatiti", "baciti". Sintaksa pisanja iznimke je:


pokušajte {// ovdje napisati svoj kod}} Catch (vrsta iznimke) {// ovdje napišite svoj kod}

U gornjem kôdu, kôd napisan u pokušaju blok je kod koji želite nadzirati za iznimku. Ako se iznimka dogodi u pokušaju, blokira se pomoću ključne riječi "baci". Bačeni izuzetak može biti uhvaćen blokom "catch" navedenog koda. "Vrsta iznimke" vrsta je iznimke koja se dogodila.

Jednostavnim riječima možemo reći da su pogreške nastale zbog nepropisnog koda nazivaju se iznimke. Na primjer, ako nije pronađena tražena klasa ili nije pronađena tražena metoda. Ove vrste izuzetaka nastaju zbog koda u programu; sustav nije odgovoran za takve vrste izuzetaka. Izuzeci su klasificirani kao "provjereni" i "neprovjereni". Neprovjerene iznimke nisu u znanju prevoditelja jer se događaju za vrijeme izvršavanja, dok prevoditelj ima znanje o provjerenim iznimkama jer su one poznate po prevoditelju za vrijeme kompilacije.

  1. Do greške dolazi samo kad nedostaju resursi sustava dok, ako neki kôd, ima problema.
  2. Pogreška se nikada ne može vratiti, dok se iznimka može oporaviti pripremanjem koda za obradu iznimke.
  3. Pogreška se nikada ne može obraditi, ali iznimkom se može upravljati kodom ako je kod koji baca iznimku napisan unutar bloka pokušaj ulova.
  4. Ako se dogodila pogreška, program će se prekinuti nenormalno. S druge strane, ako se dogodi izuzetak, program će izuzeti izuzetak i njime se upravlja pomoću bloka pokušaj ulova.
  5. Pogreške su nekontroliranog tipa, tj. Greška nije u znanju prevoditelja, dok je iznimka klasificirana kao provjerena i neprovjerena.
  6. Pogreške su definirane u paketu java.lang.Error, dok je iznimka definirana java.lang.Exception.

Zaključak:

Izuzeci su rezultati pogrešaka kodiranja programa, a pogreške su rezultat nepravilnog funkcioniranja sustava