try-catch

Werbung
Exceptions: Klassen-Hierarchie
„unchecked“
schwere Fehler:
„try not to catch“
java.lang.Throwable
Basisklasse
„checked“
„checked“
(declare & catch)
Error
VirtualMachineError
Exception
...
...
LinkageError
IOException
PrinterException
RuntimeException
„unchecked“
may catch
...
NullPointerException
EmptyStackException
IndexOutOfBoundsException
Werfen von Exceptions
„checked“ Exceptions
müssen deklariert werden
public void work()
throws MyException, Exception
{
...
throw new Exception(„foo“);
...
MyException m = new MyException();
throw m;
...
throw new Error(„not checked“);
throw new RuntimeException(„bar“);
...
„unchecked“ Exceptions
}
sind nicht notw. deklariert
try-catch-finally
try {
work();
throw new Exception(„foo“);
}
catch (MyException m) {
}
catch (Exception e) {
...
}
catch (Throwable e) {
}
finally {
...
}
Formaler Parameter
(ähnlich wie Methoden)
Reihenfolge wichtig
(Throwable fängt alles),
mind. 1 Klausel
Wird in jedem Fall
ausgeführt, z.B. Schliessen
von Verbindungen, DB, ...
1
Herunterladen