Preporučeno, 2025

Izbor Urednika

Razlika između pogreške i iznimke u Javi

"Throwable" djeluje kao korijen za Java grešku i hijerarhiju iznimaka. "Pogreška" je kritično stanje koje se ne može obraditi kodom programa. “Iznimka” je iznimna situacija koja se može obraditi kodom programa. Značajna razlika između pogreške i iznimke je u tome što je pogreška uzrokovana nedostatkom sistemskih resursa, a iznimka je uzrokovana vašim kodom. Proučimo i druge razlike između pogrešaka i iznimaka zajedno s usporednom tablicom.

Tablica usporedbe

Osnova za usporedbugreškaizuzetak
Osnovni, temeljniDošlo je do pogreške zbog nedostatka sistemskih resursa.Izuzetak je uzrokovan kôdom.
OporavakPogreška je nepovratna.Iznimka se može povratiti.
ključne riječiNe postoji način da se obradi pogreška programskog koda.Iznimke se rješavaju pomoću tri ključne riječi "probati", "uhvatiti" i "baciti".
posljedice
Kako je pogreška otkrivena, program će se abnormalno prekinuti.Kako se otkriva iznimka, ona se baca i hvata ključnim riječima "bacanje" i "uhvatiti" na odgovarajući način.
vrstePogreške su klasificirane kao neprovjereni tip.Izuzeci su klasificirani kao provjereni ili neprovjereni.
PaketU Javi se pogreške definiraju paketom "java.lang.Error".U Javi su iznimke definirane u "java.lang.Exception".
PrimjerOutOfMemory, StackOverFlow.Provjerene iznimke: NoSuchMethod, ClassNotFound.
Neizvršene iznimke: NullPointer, IndexOutOfBounds.

Definicija pogreške

" Pogreška " je podrazred ugrađenog razreda "Throwable". Pogreške su kritični uvjeti koji nastaju zbog nedostatka sistemskih resursa i ne mogu se obraditi pomoću koda programa. Pogreške se ne mogu oporaviti ni na koji način jer se ne mogu stvoriti, baciti, uhvatiti ili odgovoriti. Pogreške su uzrokovane katastrofalnim neuspjehom koji vaš program obično ne može obraditi.

Pogreške su uvijek neprovjerene vrste, jer kompajler nema nikakvih saznanja o njegovoj pojavi. Pogreške se uvijek pojavljuju u okolini vremena izvođenja. Pogreška se može objasniti uz pomoć primjera, program ima grešku prelijevanja stogova, pogrešku memorije, ili grešku pada sustava, ova vrsta pogreške je posljedica sustava. Kôd nije odgovoran za takve pogreške. Posljedica pojave pogreške je da se program prekine abnormalno.

Definicija iznimke

“Iznimka” je također podklasa ugrađene klase “Throwable”. Iznimke su iznimni uvjeti koji se pojavljuju u runtime okruženju. Većina vremena iznimaka je uzrokovana zbog koda našeg programa.Ali, iznimke se može rukovati sam program, kao iznimke su nadoknadivi. Iznimke se rješavaju pomoću tri ključne riječi “probati”, “uhvatiti”, “baciti”. Sintaksa pisanja izuzetka je:

 try {// ovdje upišite svoj kod} Catch (tip iznimke) {// ovdje upišite svoj kod} 

U gore navedenom kodu, kod napisan u probnom bloku je kod koji želite pratiti za iznimku. Ako dođe do iznimke u probnom bloku, ona se baca pomoću ključne riječi "throw". Izuzeta iznimka može se uhvatiti blokom "ulov" gornjeg koda. “Tip iznimke” je vrsta iznimke koja se dogodila.

Jednostavnim riječima možemo reći da se greške koje su nastale zbog nepravilnog koda nazivaju iznimkama. Na primjer, ako tražena klasa nije pronađena ili tražena metoda nije pronađena. Takve iznimke su posljedica koda u programu; sustav nije odgovoran za ove vrste iznimaka. Iznimke su klasificirane kao "označene" i "neoznačene". Neoznačene iznimke nisu u poznavanju kompajlera kako se pojavljuju tijekom runtimea, dok kompajler ima znanje o provjerenim iznimkama jer su kompajleru poznate tijekom kompiliranja.

Ključne razlike u pogreškama i iznimkama

  1. Došlo je do pogreške samo kada su resursi sustava manjkavi, dok je iznimka uzrokovana ako kod ima neki problem.
  2. Pogreška se nikada ne može vratiti, dok se iznimka može obnoviti pripremom koda za obradu iznimke.
  3. Pogreška se nikada ne može obraditi, ali iznimkom se može rukovati kodom ako se kod koji baca iznimku piše unutar bloka try i catch.
  4. Ako je došlo do pogreške, program će se prekinuti neuobičajeno. S druge strane, ako dođe do iznimke, program će baciti iznimku i njime se rukuje pomoću bloka try i catch.
  5. Pogreške su neprovjerene vrste, tj. Pogreška nije u poznavanju kompilatora, 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:

Iznimke su rezultati pogrešaka učinjenih u šifriranju programa, a pogreške su rezultat nepravilnog funkcioniranja sustava

Top