Home > Informatik > Begriffe und Konzepte > Ausnahmen, kontrollierte

Ausnahmen, kontrollierte

Kontrollierte Ausnahmen (Exceptions)

Kontrollierte Ausnahmen (checked exceptions) sind solche, die vom Compiler ausdrücklich überwacht werden.

Das heißt, wenn eine Methode eine solche kontrollierte Ausnahme auslösen kann, zwingt der Compiler den Entwickler, sich darum zu kümmern. Die Methode muss die Ausnahme entweder

  • mit einem try-catch-Block behandeln oder
  • mit dem Schlüsselwort throws in der Methodensignatur deklarieren und an die aufrufende Methode weitergeben, die sich dann um die Fehlerbehandlung kümmert.

Wird eine solche kontrollierte Ausnahme nicht behandelt, kann der Code nicht kompiliert werden.

Die wichtigsten kontrollierten Ausnahmen sind:

IOException

Allgemeiner Ein-/Ausgabefehler, zum Beispiel wenn aus einer Datei gelesen werden soll, die aus irgendeinem Grund nicht lesbar ist, oder wenn auf der Festplatte ein Schreibfehler vorliegt, die Netzwerkverbindung während des Lesens/Schreibens abbricht und so weiter.

FileNotFoundException

Das Objekt FileNotFoundException ist eine Unterklasse von IOException. Eine solche Ausnahme tritt beispielsweise auf, wenn eine Datei, auf die zugegriffen werden soll, gar nicht existiert oder wenn keine Zugriffsrechte für die Datei vorhanden sind.

SQLException

Diese Ausnahme bezieht sich auf Fehler bei Zugriffen auf eine Datenbank. Ursache hierfür können falsche Zugangsdaten, fehlerhafte SQL-Anweisungen oder ein nicht erreichbarer Datenbank-Server sein.

Weitere kontrollierte Ausnahmen

Es gibt noch eine ganze Reihe weiterer kontrollierter Ausnahmen wie ClassNotFoundException, InterruptedException, ParseException oder MalformedURLException.

Gemeinsames Merkmal all dieser Exceptions ist, dass sie meistens bei Dateioperationen, Netzwerkzugriffen, Datenbankzugriffen oder bei der Thread-Programmierung auftreten.

Eine Methode muss solche kontrollierten Ausnahmen entweder selbst behandeln (try-catch) oder mit throws an die aufrufende Methode weitergeben, die sich dann um die Fehlerbehandlung kümmern muss.

Quellen:

  1. Abts, D.: Grundkurs Java. 12. Auflage, Wiesbaden: Springer-Vieweg 2024.