Java kivételek

Ebben az oktatóanyagban megismerkedhetünk a Java kivételével. Kitérünk a hibákra, kivételekre és a Java kivételes típusaira.

Kivételt képez egy váratlan esemény, amely a program futtatása során következik be. Hatással van a program utasításainak folyamatára, ami a program rendellenes leállását okozhatja.

Kivétel sok okból következhet be. Néhány közülük:

  • Érvénytelen felhasználói bevitel
  • Eszközhiba
  • A hálózati kapcsolat megszakadása
  • Fizikai korlátozások (lemerülő memória hiánya)
  • Kódhibák
  • Nem elérhető fájl megnyitása

Java kivétel hierarchiája

Itt található a Java hierarchiájának egyszerűsített ábrája.

Amint a fenti képből látható, az Throwableosztály a hierarchia gyökérosztálya.

Vegye figyelembe, hogy a hierarchia két ágra oszlik: Hiba és Kivétel.

Hibák

A hibák olyan helyrehozhatatlan feltételeket jelentenek, mint a Java virtuális gép (JVM) kifogyó memóriája, a memória szivárgása, a verem túlcsordulási hibái, a könyvtár inkompatibilitása, a végtelen rekurzió stb.

A hibákat általában a programozó nem tudja ellenőrizni, és nem szabad megpróbálnunk kezelni a hibákat.

Kivételek

A kivételeket felfoghatja és kezelheti a program.

Amikor egy metóduson belül kivétel lép fel, objektumot hoz létre. Ezt az objektumot kivétel objektumnak hívják.

Ez a kivételről tartalmaz információkat, például a kivétel nevét és leírását, valamint a program állapotát, amikor a kivétel bekövetkezett.

A következő oktatóanyagban megtanuljuk, hogyan kell kezelni ezeket a kivételeket. Ebben az oktatóanyagban most különféle típusú kivételekre fogunk összpontosítani a Java-ban.

Java kivétel típusok

A kivétel hierarchiának két ága is van: RuntimeExceptionés IOException.

1. Futásidejű kivétel

A futásidejű kivétel történik, mivel egy programozási hiba. Ellenőrizetlen kivételként is ismertek .

Ezeket a kivételeket nem fordítási, hanem futási időben ellenőrzik. Néhány általános futásidejű kivétel:

  • Az API nem megfelelő használata - IllegalArgumentException
  • Null mutató hozzáférés (hiányzik egy változó inicializálása) - NullPointerException
  • Határon kívüli tömb-hozzáférés - ArrayIndexOutOfBoundsException
  • Szám elosztása 0-val - ArithmeticException

Ilyen módon gondolkodhat rajta. "Ha futásidejű kivétel, akkor az a te hibád".

A NullPointerExceptionnem következett volna be, ha ellenőrizte, hogy a változó indítjuk-e vagy sem, mielőtt használja.

Egy ArrayIndexOutOfBoundsExceptionnem következett volna be, ha vizsgált tömbindexként ellen a tömb határait.

2. IOException

Az An ellenőrzött kivételkéntIOException is ismert . A fordító a fordítás idején ellenőrzi őket, és a programozót felszólítja, hogy kezelje ezeket a kivételeket.

Néhány példa az ellenőrzött kivételekre:

  • Nem létező fájl megnyitásával próbálkozik FileNotFoundException
  • Megpróbál olvasni egy fájl végén

Most ismerjük a kivételeket, a következő oktatóanyagban megismerhetjük a kivételek kezelését.

érdekes cikkek...