Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Exceptions. import java.sql.*; public class MyException{ boolean b; Statement stat; public MyException(){ b = stat.execute("xyz"); } Beim Übersetzen dieses.

Ähnliche Präsentationen


Präsentation zum Thema: "Exceptions. import java.sql.*; public class MyException{ boolean b; Statement stat; public MyException(){ b = stat.execute("xyz"); } Beim Übersetzen dieses."—  Präsentation transkript:

1 Exceptions

2 import java.sql.*; public class MyException{ boolean b; Statement stat; public MyException(){ b = stat.execute("xyz"); } Beim Übersetzen dieses Programms ergibt sich eine Fehlermeldung, die sich auf diese Anweisung bezieht

3 Es gibt Anweisungen, die unbedingt in Verbindung mit dem sogenannten try... catch verwendet werden müssen, weil die Anweisung einen Fehler verursachen (Fehlerobjekt werfen) kann.

4 Dieser Fehler muß dann im catch-Block bearbeitet (eingefangen) werden.

5 Es gibt zwar auch Anweisungen, die einen Fehler bewirken können und nicht mit try... catch bearbeitet werden müssen. Doch dies ist nicht ratsam (schlechter Programmierstil), da dann dieser durch Java "geworfene" Fehler automatisch mit dem Standard- Ausnahme-Handler von Java bearbeitet wird, der dann eine unspezifische Fehlermeldung ausgibt

6 und nicht die Fehlermeldung, die der Programmierer ausgeben will. Der Fehler wird dadurch also nicht innerhalb des Programms abgefangen und kann deshalb nicht nach den Wünschen des Programmierers bearbeitet werden (z.B. entsprechende Meldung in einem Textfeld des Fensters).

7 Beispiel in Java

8 public class MyException { double erg; public MyException(){ try{ erg = Double.parseDouble("abc"); } catch(Throwable e){ System.out.println("Falsche Eingabe"); } Bei der Anweisung im try-Block, bei der ein Fehler (z.B. wenn statt einer Zahl eine Zeichenkette eingegeben wurde) auftritt, wird sofort der try-Block verlassen und in die entsprechende catch-Klausel gesprungen. Dann ist die try...catch Anweisung beendet und das Programm macht bei der Anweisung weiter, die dem try...catch Block folgt.... und im catch-Block wieder eingefangen (d.h. bearbeitet). versucht den String "abc" in eine Zahl umzuwandeln. Dabei wird ein Fehlerobjekt der Klasse Throwable geworfen...


Herunterladen ppt "Exceptions. import java.sql.*; public class MyException{ boolean b; Statement stat; public MyException(){ b = stat.execute("xyz"); } Beim Übersetzen dieses."

Ähnliche Präsentationen


Google-Anzeigen