- Rukovanje iznimkama
- Prednost rukovanja iznimkama
- Hijerarhija klasa izuzetaka
- Vrste iznimki
- Primjer iznimke
- Scenariji u kojima se može dogoditi iznimka
The Rukovanje iznimkama u Javi jedan je od moćnih mehanizam za obradu pogrešaka tijekom izvođenja tako da se može održati normalan tok aplikacije.
U ovom vodiču naučit ćemo o Java iznimkama, njihovim vrstama i razlici između označenih i neprovjerenih iznimki.
tigar lav razlika
Što je Exception u Javi?
Rječničko značenje: Iznimka je nenormalno stanje.
U Javi je iznimka događaj koji remeti normalan tijek programa. To je objekt koji se izbacuje tijekom izvođenja.
Što je rukovanje iznimkama?
Rukovanje iznimkama je mehanizam za obradu pogrešaka u vremenu izvođenja kao što su ClassNotFoundException, IOException, SQLException, RemoteException itd.
Prednost rukovanja iznimkama
Glavna prednost rukovanja iznimkama je za održavanje normalnog tijeka aplikacije . Iznimka obično ometa normalan tijek aplikacije; zato moramo rješavati iznimke. Razmotrimo scenarij:
statement 1; statement 2; statement 3; statement 4; statement 5;//exception occurs statement 6; statement 7; statement 8; statement 9; statement 10;
Pretpostavimo da postoji 10 izjava u Java programu i da se iznimka dogodi na izjavi 5; ostatak koda neće biti izvršen, tj. naredbe 6 do 10 neće biti izvršene. Međutim, kada izvršimo obradu izuzetaka, ostatak naredbi će se izvršiti. Zato koristimo rukovanje iznimkama Java .
Znaš li?
|
Hijerarhija Java Exception klasa
Klasa java.lang.Throwable je korijenska klasa hijerarhije Java Exception koju nasljeđuju dvije podklase: Exception i Error. Hijerarhija Java Exception klasa je data ispod:
Vrste Java iznimaka
Uglavnom postoje dvije vrste iznimaka: označene i neoznačene. Pogreška se smatra neprovjerenom iznimkom. Međutim, prema Oracleu, postoje tri vrste iznimaka, naime:
- Označena iznimka
- Neprovjerena iznimka
- Greška
Razlika između označenih i neprovjerenih iznimaka
1) Provjerena iznimka
Klase koje izravno nasljeđuju klasu Throwable osim RuntimeException i Error poznate su kao provjerene iznimke. Na primjer, IOException, SQLException itd. Provjerene iznimke provjeravaju se tijekom kompilacije.
2) Neprovjerena iznimka
Klase koje nasljeđuju RuntimeException poznate su kao neprovjerene iznimke. Na primjer, ArithmeticException, NullPointerException, ArrayIndexOutOfBoundsException, itd. Neprovjerene iznimke ne provjeravaju se tijekom kompajliranja, ali se provjeravaju tijekom izvođenja.
3) Pogreška
Greška je nepopravljiva. Neki primjeri pogrešaka su OutOfMemoryError, VirtualMachineError, AssertionError itd.
Ključne riječi Java iznimke
Java nudi pet ključnih riječi koje se koriste za rukovanje iznimkom. Sljedeća tablica opisuje svaki.
Ključna riječ | Opis |
---|---|
probati | Ključna riječ 'try' koristi se za određivanje bloka u koji trebamo postaviti kod iznimke. To znači da ne možemo koristiti samo try block. Nakon bloka try mora slijediti catch ili finally. |
ulov | Blok 'catch' koristi se za obradu iznimke. Mora mu prethoditi try block što znači da ne možemo koristiti samo catch blok. Kasnije može uslijediti konačna blokada. |
konačno | Blok 'finally' koristi se za izvođenje potrebnog koda programa. Izvršava se neovisno o tome je li obrađena iznimka ili ne. |
bacanje | Ključna riječ 'throw' koristi se za izbacivanje iznimke. |
bacanja | Ključna riječ 'throws' koristi se za deklariranje iznimaka. Određuje da može doći do iznimke u metodi. Ne stvara iznimku. Uvijek se koristi s potpisom metode. |
Primjer rukovanja Java iznimkom
Pogledajmo primjer rukovanja iznimkama u Javi u kojem koristimo naredbu try-catch za obradu iznimke.
JavaExceptionExample.java
public class JavaExceptionExample{ public static void main(String args[]){ try{ //code that may raise exception int data=100/0; }catch(ArithmeticException e){System.out.println(e);} //rest code of the program System.out.println('rest of the code...'); } }Testirajte sada
Izlaz:
Exception in thread main java.lang.ArithmeticException:/ by zero rest of the code...
U gornjem primjeru, 100/0 pokreće ArithmeticException kojim upravlja blok try-catch.
Uobičajeni scenariji Java iznimaka
Postoje neki scenariji u kojima se mogu pojaviti neprovjereni izuzeci. Oni su sljedeći:
1) Scenarij u kojem se javlja ArithmeticException
Ako bilo koji broj podijelimo s nulom, javlja se ArithmeticException.
int a=50/0;//ArithmeticException
2) Scenarij u kojem se javlja NullPointerException
Ako u bilo kojem imamo nultu vrijednost varijabla , izvođenje bilo koje operacije na varijabli izbacuje NullPointerException.
String s=null; System.out.println(s.length());//NullPointerException
3) Scenarij u kojem se javlja NumberFormatException
Ako se oblikovanje bilo koje varijable ili broja ne podudara, to može dovesti do NumberFormatException. Pretpostavimo da imamo a niz varijabla koja ima znakove; pretvaranje ove varijable u znamenku uzrokovat će NumberFormatException.
String s='abc'; int i=Integer.parseInt(s);//NumberFormatException
4) Scenarij u kojem se javlja ArrayIndexOutOfBoundsException
Kada polje premaši svoju veličinu, pojavljuje se iznimka ArrayIndexOutOfBoundsException. mogu postojati drugi razlozi za pojavu ArrayIndexOutOfBoundsException. Razmotrite sljedeće izjave.
int a[]=new int[5]; a[10]=50; //ArrayIndexOutOfBoundsException
Indeks Java izuzetaka
- Java Try-Catch blok
- Java Multiple Catch Block
- Java ugniježđeni pokušaj
- Java konačno blokira
- Java Throw Keyword
- Propagacija Java iznimke
- Java baca ključnu riječ
- Java bacanje protiv bacanja
- Java Final vs Finally vs Finalize
- Rukovanje Java iznimkama s nadjačavanjem metode
- Java prilagođene iznimke