Sobes.tech
Junior — Middle

Kann man Ausnahmen abfangen, die im Code nicht explizit deklariert sind?

sobes.tech KI

Antwort von AI

Ja, in Java können Ausnahmen abgefangen werden, die nicht explizit im Code deklariert sind. In Java gibt es zwei Arten von Ausnahmen:

  • Überprüfte (checked) Ausnahmen — diese müssen entweder in der Methodensignatur mit throws deklariert oder in einem try-catch-Block behandelt werden.
  • Nicht überprüfte (unchecked) Ausnahmen — diese sind Unterklassen von RuntimeException und Error. Sie müssen nicht deklariert werden und können abgefangen werden, obwohl sie normalerweise nicht speziell behandelt werden.

Zum Beispiel kann man jede Ausnahme mit catch (Exception e) abfangen, auch wenn sie nicht in der Methode deklariert ist:

try {
    // Code, der eine Ausnahme auslösen kann
} catch (Exception e) {
    // Behandlung jeder Ausnahme
}

Auf diese Weise können alle Ausnahmen abgefangen werden, aber für überprüfte Ausnahmen verlangt der Compiler, sie zu deklarieren oder zu behandeln.