Was sind geprüfte Ausnahmen in Java?

Auf Ausnahmen Ausnahmen sind, dass die Entwickler von Java das Gefühl, dass Ihre Programme absolut, eine oder andere Weise zur Verfügung stellen muss. Jedes Mal, wenn Sie eine Anweisung Code, der eine geprüfte Ausnahme, Ihr Programm werfen könnte, muss eines von zwei Dingen tun:

  • Fangen Sie die Ausnahme durch die Anweisung innerhalb einer Platzierung Versuchen Anweisung, die eine hat Fang Block für die Ausnahme.

  • Geben Sie ein wirft Klausel über die Methode, die die Anweisung, um anzuzeigen, dass Ihre Methode, um die Ausnahme zu behandeln nicht enthält wollen, so ist es vorbei, die Ausnahme auf der ganzen Linie.

Achten Sie darauf, nicht zu verwechseln werfen mit wirft. Das wirft Schlüsselwort wird auf ein Verfahren verwendet, um anzuzeigen, dass das Verfahren nicht eine bestimmte geprüfte Ausnahme nicht auffängt, sondern wirft es auf den anrufenden Routine. Das werfen Anweisung, auf der anderen Seite, ist eine ausführbare Anweisung, die eine Ausnahme tatsächlich wirft.

Dies ist das # 147-catch-oder Wurf # 148-Regel. Kurz gesagt, jedes Verfahren, das eine Erklärung enthält, die eine geprüfte Ausnahme werfen könnte müssen anerkennen, dass es die Ausnahme ausgelöst werden könnte kennt. Das Verfahren tut dies, indem es direkt beim Umgang oder durch die Ausnahme vorbei zu seinem Anrufer.

Zum Beispiel kann ein Verfahren, das verwendet das Fileinput Klasse Daten aus einer Datei zu lesen, muss der Griff FileNotFoundException wenn es schafft die Fileinput Objekt. Diese Ausnahme tritt auf, wenn die angegebene Datei nicht existiert. FileNotFoundException ist eine geprüfte Ausnahme, so dass er gefangen oder geworfen werden müssen.

Eine Möglichkeit, mit der zu tun FileNotFoundException ist es zu fangen durch eine gewöhnliche Verwendung Versuchen Erklärung:

public static void openfile (String name) {try {Fileinput f = new Fileinputstream (name) -} catch (FileNotFoundException e) {System.out.println (# 147-Datei nicht gefunden # 148 -.) -}}

In diesem Beispiel ist die Nachricht Datei nicht gefunden wird angezeigt, wenn die C: test.txt Datei existiert nicht.

Wenn Sie nicht wollen, mit dem zu beschäftigen FileNotFoundException in dem Verfahren, das schafft die Fileinput Objekt, das Verfahren muss die Ausnahme werfen, wie folgt aus:

public static void openfile (String name) throws FileNotFoundException {Fileinput f = new Fileinputstream (name) -}

Hinzufügen eines wirft Klausel die Öffne Datei Verfahren bedeutet, dass, wenn die FileNotFoundException auftritt, ist es einfach an die Methode übergeben nach oben, dass die genannte Öffne Datei Verfahren. Das bedeutet, dass der anrufende Methode die Ausnahme abfangen oder werfen müssen.

Menü