Különbség a Java bejelölt és nem ellenőrzött kivételei között

Tartalomjegyzék:

Különbség a Java bejelölt és nem ellenőrzött kivételei között
Különbség a Java bejelölt és nem ellenőrzött kivételei között

Videó: Különbség a Java bejelölt és nem ellenőrzött kivételei között

Videó: Különbség a Java bejelölt és nem ellenőrzött kivételei között
Videó: Checked vs. Unchecked Exceptions in Java Tutorial - What's The Difference? 2024, November
Anonim

Kulcskülönbség – bejelölt és nem ellenőrzött kivétel Java-ban

A kivétel egy futásidejű hiba. Kétféle kivétel létezik, amelyeket ellenőrzött és nem ellenőrzött kivételeknek nevezünk. Ellenőrzött kivétel esetén a Java alkalmazás külső erőforráshoz, például fájlhoz, eszközhöz vagy adatbázishoz csatlakozik. Ezeket a kivételeket a fordító ellenőrzi. Néhány példa az ellenőrzött kivételekre: IO kivétel és FileNotFound kivétel. Ha ellenőrizetlen kivétel történik, az alkalmazás nem kapcsolódik semmilyen külső erőforráshoz. Ezeket a kivételeket a fordító nem ellenőrzi. Néhány példa a nem ellenőrzött kivételekre: Az aritmetikai kivétel és az ArrayOutOfBound kivétel. Ez a cikk a Java ellenőrzött és nem ellenőrzött kivételei közötti különbséget tárgyalja. A legfontosabb különbség a Java ellenőrzött és nem ellenőrzött kivételei között az, hogy az ellenőrzött kivételt a fordító ellenőrzi, míg a nem ellenőrzött kivételt a fordító nem.

Mi az a bejelölt kivétel a Java-ban?

Ha ellenőrzött kivétel történik, a Java alkalmazás egy külső erőforráshoz csatlakozik. Ez az erőforrás lehet egy eszköz, például nyomtató. Ez lehet fájl vagy adatbázis. Ezért ezeket a kivételeket a fordító ellenőrzi. Az IO kivétel egy ellenőrzött kivétel. Ez a készülék hibája miatt következik be. Ha az alkalmazás nem létező fájlhoz fér hozzá, akkor FileNotFound kivételt fog okozni. Adattárolás céljából egy alkalmazás csatlakoztatható adatbázishoz, például MySQL, Oracle stb. Ha hiba történik egy adatbázissal kapcsolatban, az SQL kivételnek minősül. Ez néhány példa az ellenőrzött kivételekre. Mindezekben az alkalmazás külső erőforráshoz kapcsolódik. Ellenőrzött kivételeknél kötelező a kivétel kezelése. Ha nem kezeli, akkor a program megfelelő folyamata leáll, és az osztályfájl nem jön létre. A hiba a try, catch blokk segítségével kezelhető.

Különbség a Java ellenőrzött és nem ellenőrzött kivételei között
Különbség a Java ellenőrzött és nem ellenőrzött kivételei között

01. ábra: Ellenőrzött kivételkezelés

A fentiek szerint a FileReader adatokat olvasott ki a fájlból. A text1.txt fájl nem létezik a megadott helyen. A kivételt adó kód a try blokkba kerül. A nyomtatandó üzenet a rögzítőblokkon belül található. Mivel nincs text1.txt nevű fájl, ez FileNotFoundException kivételt okoz. A kivételkezelés használatával az üzenet a képernyőre kerül.

Mi az a nem ellenőrzött kivétel a Java-ban?

A nem ellenőrzött kivételeket a fordító nem ellenőrzi. Ellentétben a bejelölt kivételekkel, a nem ellenőrzött kivételekkel a Java alkalmazás nem kapcsolódik külső erőforráshoz, például fájlhoz, adatbázishoz vagy eszközhöz. Néhány gyakori nem ellenőrzött kivétel az aritmetikai, az ArrayOutOfBound és a NullPointer kivételek.

int a=10, b=0;

int div=a/b;

System.out.println(div);

Ez számtani kivételt fog okozni, mert az „a” nullára ugrik. Lásd az alábbi kódot.

A Java ellenőrzött és nem ellenőrzött kivételei közötti különbség_ábra 02
A Java ellenőrzött és nem ellenőrzött kivételei közötti különbség_ábra 02

02. ábra: Aritmetikai kivételek kezelése

A fenti program szerint az a változó egész szám. A b változó értéke 0. E két szám osztása nullával való osztás. Ezért számtani kivételt fog okozni. Try-catch blokk segítségével kezelhető. A kivételt okozó utasítások a try blokkba kerülnek. A megjelenítendő üzenet a catch blokkban található.

Lásd a kód alábbi részét.

int array1={1, 2, 3, 4, 5};

System.out.println(array1[5]);

Ez kivételt okoz. A tömb1 egy 5 elemből álló tömb. A tömb kezdő indexe nulla. Az 5th indexérték kinyomtatása kivételt okoz, mert túl van kötötten. A tömb1 maximális indexe 4.

Főbb különbség a Java ellenőrzött és nem ellenőrzött kivételei között
Főbb különbség a Java ellenőrzött és nem ellenőrzött kivételei között

03. ábra: ArrayOutOfBound kivételkezelés

A fenti program szerint a tömb1 5 elemű. A 6-os indexű elem kinyomtatása kivételt okoz, mert nem kötött. A tömb1-ben tárolható maximális index 5. A hibaüzenet a catch blokk végrehajtásával jelenik meg.

Mi a hasonlóság a Java ellenőrzött és nem ellenőrzött kivételei között

A Java bejelölt és nem ellenőrzött kivétele a Java kivételtípusa

Mi a különbség a Java bejelölt és nem ellenőrzött kivételei között?

Bejelölt vs nem ellenőrzött kivétel Java-ban

Az ellenőrzött kivétel egy futásidejű hiba, amelyet a fordító ellenőriz. Az ellenőrizetlen kivétel egy futásidejű hiba, amelyet a fordító nem ellenőrzött.
Előfordulás
Ha bejelölt kivétel történik, a Java alkalmazás külső erőforráshoz, például fájlhoz, eszközhöz vagy adatbázishoz csatlakozik. Ha ellenőrizetlen kivétel történik, a Java alkalmazás nem kapcsolódik külső erőforráshoz.
Példák
IOException, FileNotFoundException, SQLException néhány példa az ellenőrzött kivételekre. Az aritmetikai kivétel, az ArrayOutOfBoundException, a NullPointerException néhány példa a nem ellenőrzött kivételekre.

Összefoglaló – Ellenőrzött és nem ellenőrzött kivétel Java-ban

A kivétel olyan esemény, amely megszakítja a programfolyamat végrehajtását. Kétféle kivétel létezik. Ezeket ellenőrzött kivételeknek és ellenőrizetlen kivételeknek nevezzük. Ez a cikk az ellenőrzött kivételek és a nem ellenőrzött kivételek közötti különbséget tárgyalja. A Java ellenőrzött és nem ellenőrzött kivételei között az a különbség, hogy az ellenőrzött kivételt a fordító ellenőrzi, míg a nem ellenőrzött kivételt a fordító nem. Mivel a kivételek befolyásolják a programvégrehajtás helyes menetét, jó programozási gyakorlat ezek kezelése.

Ajánlott: