GeeksforGeeks (Magyar)

Java-ban kétféle kivétel létezik:

1) ellenőrizve: vannak a kivételek, amelyeket a fordításkor ellenőriznek. Ha egy metóduson belüli kód egy ellenőrzött kivételt dob, akkor a módszernek vagy kezelnie kell a kivételt, vagy meg kell adnia a kivételt a dobók kulcsszóval.

például fontolja meg a következő Java programot, amely megnyitja a fájlt a helyszínen “C:\test\a.txt” és kiírja az első három sort., A program nem áll össze, mert a fő () függvény Filereadert() használ, a FileReader() pedig egy ellenőrzött kivételt dob FileNotFoundException. Ez is használ readLine() és close() módszerek, és ezek a módszerek is dobja ellenőrzött kivétel IOException



kimenet:

Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - unreported exception java.io.FileNotFoundException; must be caught or declared to be thrown at Main.main(Main.java:5)

a fenti program javításához vagy meg kell adnunk a kivételek listáját dobásokkal, vagy használnunk kell a try-catch blokkot. Az alábbi programban dobásokat használtunk., Mivel FileNotFoundException egy alosztálya IOException, mi csak adja IOException a dob lista, és hogy a fenti program fordító-hibamentes.



kimenet: a fájl első három sora “C:\test\a.txt”

2) nincs bejelölve azok a kivételek, amelyeket nem ellenőriznek az összeállított időben. A C++ – ban az összes kivétel nincs bejelölve, így a fordító nem kényszeríti a kivétel kezelésére vagy megadására. A programozók feladata, hogy civilizáltak legyenek, meghatározzák vagy elkapják a kivételeket.,
A Java kivételek alatt Error and RuntimeException osztályok nincs bejelölve kivételek, minden más alatt throwable van jelölve.

 +-----------+ | Throwable | +-----------+ / \ / \ +-------+ +-----------+ | Error | | Exception | +-------+ +-----------+ / | \ / | \ \________/ \______/ \ +------------------+ unchecked checked | RuntimeException | +------------------+ / | | \ \_________________/ unchecked

vegye figyelembe a következő Java programot. Jól fordítja, de futás közben ArithmeticException-t dob. A fordító lehetővé teszi a fordítást, mert az ArithmeticException nem ellenőrzött kivétel.,2b7cfd03″>

;

int y = 10;
int z = y/x;
}
}



Output:

Exception in thread "main" java.lang.ArithmeticException: / by zero at Main.main(Main.java:5)Java Result: 1

Why two types?,
lásd a nem ellenőrzött kivételeket — a részleteket.

ellenőrizzük vagy ellenőrizzük a kivételeket?
A következő a Java documents
alsó sora, ha az ügyfél ésszerűen elvárható, hogy egy kivételtől helyreálljon, akkor ellenőrizze a kivételt. Ha egy ügyfél nem tud semmit, hogy visszaszerezze a kivétel, hogy ez egy ellenőrizetlen kivétel

Java Corner GeeksforGeeks

kérjük, írjon megjegyzéseket, ha talál valami helytelen, vagy meg szeretné osztani több információt a témáról a fent tárgyalt.

figyelem olvasó! Ne hagyja abba a tanulást., Szerezd meg az összes fontos Java Foundation and Collections fogalmak alapjait Java és Java Collections természetesen egy diák-barát áron, és lesz ipar kész.

cikk címkék:

Java

gyakorlati címkék:

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük

Tovább az eszköztárra