Javakurs für Anfänger
|
|
- Anna Graf
- vor 7 Jahren
- Abrufe
Transkript
1 Javakurs für Anfänger Einheit 13: Ausnahmen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme
2 Heutige Agenda Ausnahmen (Exceptions) Motivation Fehlerbehandlung Klassenhierarchie Checked vs. Unchecked Eigene Ausnahmen schreiben und werfen Praxis: Übung 1 Übung 2 Lernziele Einführung in die Fehlerbehandlung unter Java Mit Fehlern umgehen und diese behandeln können Eigene Ausnahmen definieren und verwenden können Javakurs 13: Exceptions - Lorenz Schauer 2
3 Motivation Fehler sind unvermeidbar und gehören zum Programmieren dazu. Programmierfehler: Sollten im Programm behoben werden (Debugging) Benutzer-/Laufzeitfehler: Sollten abgefangen und behandelt werden Bsp.: Benutzer will die Wurzel einer negativen Zahl berechnen lassen Erfordert Ausnahmebehandlung, damit das Programm nicht abstürzt Kostet viel Zeit und Ressourcen (Tests) Ziel: Fehlerfreies Produkt! 1. Möglichkeit: Mögliche Fehler per if-abfragen abfangen: // Falls kein Text eingegeben wurde: if(tf_user.gettext().equals("")){ msg.settext("es wurde kein Nutzername eingegeben!"); Javakurs 13: Exceptions - Lorenz Schauer 3
4 Exceptions als Reaktion auf Fehler Mit if-abfragen könnten wir theoretisch arbeiten, aber Sehr umständlich und aufwendig Es müsste jede Möglichkeit für jedes Textfeld implementiert werden! Textfeld leer Eingabe hat falsches Format Eingabe ist ungültig etc. Daher nutzen wir Exceptions (Ausnahmen) für die Behandlung von Fehlern. Typisches Beispiel: Nutzer gibt eine Kommazahl, statt einer Ganzzahl ein: Bitte geben Sie eine Ganzzahl ein: 4.6 Exception in thread "main" java.lang.numberformatexception: For input string: "4.6" at java.lang.numberformatexception.forinputstring(unknown Source) at java.lang.integer.parseint(unknown Source) at java.lang.integer.parseint(unknown Source) at Exceptions.FehlerhafteEingabe.main(FehlerhafteEingabe.java:12) Javakurs 13: Exceptions - Lorenz Schauer 4
5 Behandlung von Fehlern Solche fehlerhaften Eingaben führen dazu, dass der weitere Programmablauf nicht ausgeführt wird und stattdessen implizit eine Excepetion ausgelöst wird. Wenn wir solche Exceptions nicht behandeln (abfangen), dann geht es in unserem Programm hier nicht weiter => Das Programm bricht (teilweise) ab. Daher müssen wir auf mögliche Fehler/Ausnahmen reagieren: Mittels try catch können wir auftretende Exceptions abfangen: try{ <<Block>> ; Mit dem Schlüsselwort try wird der Versuch unternommen, den Programmcode im einschließenden Block, wie vorgesehen, auszuführen. catch (Exception e){ <<Block>>; Die catch-anweisung nach dem try-block dient der Fehlerbehandlung, falls ein Fehler innerhalb des try-block mit dem Typ Exception aufgetreten ist Falls kein Fehler im try-block aufgetreten ist, wird der catch-block übersprungen! Javakurs 13: Exceptions - Lorenz Schauer 5
6 Beispiel mit try/catch public class FehlerhafteEingabe { public static void main(string[] args) { Scanner scan = new Scanner(System.in); System.out.println("Bitte geben Sie eine Ganzzahl ein: "); int eingabe=0; boolean show_ausgbabe=true; try { Hier kann Fehler vom Typ NumberFormatExcpetion auftreten! Daher mit try umschließen eingabe = Integer.parseInt(scan.next()); Falls NumberFormatExcpetion catch (NumberFormatException e) { aufgetreten ist: System.out.println("Fehlerhafte Eingabe!"); show_ausgbabe=false; catch-block ausführen! if(show_ausgbabe) System.out.println("Ihre Eingabe war: "+eingabe); Bitte geben Sie eine Ganzzahl ein: 3 Ihre Eingabe war: 3 Bitte geben Sie eine Ganzzahl ein: 4.5 Fehlerhafte Eingabe! Javakurs 13: Exceptions - Lorenz Schauer 6
7 Eine Ausnahme ist letztendlich auch wieder ein Objekt der Klasse Exception oder einer Unterklasse und kann ganz normal mit new erzeugt werden Exceptions erben von Throwable Die Klasse Exception selbst erbt von der Klasse Throwable, die zahlreiche Methoden bereitstellt Neben Exceptions gibt es die Klasse Error: Ein Error bezeichnet ernsthafte Problem wie bspw.: Speicherzugriffsfehler und sollte nicht durch die Anwendung behandelt werden! Quelle: Javakurs 13: Exceptions - Lorenz Schauer 7
8 Exceptions stammen also immer von Throwable ab und können über die Klassenhierarchie immer feiner spezifiziert sein: Ein kleiner Ausschnitt: Klassenhierarchie von Exceptions Quelle: Javakurs 13: Exceptions - Lorenz Schauer 8
9 Mit catch auf bestimmte Fehler oder Fehlergruppen reagieren Durch die Klassenhierarchie können wir mittels catch(fehlertyp f) auch auf einzelne spezielle Fehler reagieren Bsp.: NumberFormatException Unterklasse von java.lang.illegalargumentexception Unterklasse von java.lang.runtimeexception Oder eben auf ganze Fehlergruppen: Bsp.: IllegalArgumentException Reagiert auch auf: IllegalChannelGroupException, IllegalCharsetNameException, IllegalFormatException, IllegalSelectorException, IllegalThreadStateException, InvalidKeyException, InvalidOpenTypeException, InvalidParameterException, InvalidPathException, KeyAlreadyExistsException, Mittels catch(exception e){ reagieren wir auf jeglichen Fehler! Eher vermeiden! Lieber Fehler im Detail behandeln Javakurs 13: Exceptions - Lorenz Schauer 9
10 Beispiel für detaillierte Fehlerbehandlung public class FehlerhafteEingabe { public static void main(string[] args) { Scanner scan = new Scanner(System.in); System.out.println("Bitte geben Sie eine Ganzzahl ein: "); int eingabe=0; boolean show_ausgbabe=true; try { eingabe = Integer.parseInt(scan.next()); catch (NumberFormatException e) { System.out.println("Fehlerhafte Eingabe!"); show_ausgbabe=false; catch (IllegalArgumentException e){ e.printstacktrace(); show_ausgbabe=false; if(show_ausgbabe) System.out.println("Ihre Eingabe war: "+eingabe); Auf einen try Block können mehrere catch-blöcke folgen Mit dem speziellsten Fehler beginnen! Dann in der Hierarchie immer höher gehen! Der erste catch-block der passt wird ausgeführt! Die anderen werden dann übersprungen! Javakurs 13: Exceptions - Lorenz Schauer 10
11 Das Schlüsselwort finally Try-catch Konstrukte können mit dem Schlüsselwort finally ergänzt werden Im finally-block wird auf jeden Fall der Code ausgeführt, selbst wenn keine Ausnahme auftritt Motivation: Aufräumarbeiten o. Ä. try { int eingabe = Integer.parseInt(scan.next()); System.out.println("Ihre Eingabe war: "+eingabe); catch (NumberFormatException e) { System.out.println("Fehlerhafte Eingabe!"); catch (IllegalArgumentException e){ e.printstacktrace(); finally{ System.out.println("Programm ist zu Ende"); Bitte geben Sie eine Ganzzahl ein: 3 Ihre Eingabe war: 3 Programm ist zu Ende Bitte geben Sie eine Ganzzahl ein: 3.4 Fehlerhafte Eingabe! Programm ist zu Ende Javakurs 13: Exceptions - Lorenz Schauer 11
12 Überprüft oder nicht? Ausnahmen können entweder nicht überprüft (unchecked) sein Können abgefangen werden, müssen aber nicht Idee: Ausnahmen, die auf einen Programmierfehler folgen, müssen nicht überprüft werden Alle Arten von java.lang.runtimeexception überprüft (checked) sein Müssen abgefangen oder explizit als möglich deklariert sein I.d.R. Ausnahmen, die ab und zu unvermeidlich sind Bsp.: FileNotFoundException, IOException, //Fehlermeldung: unreported exception java.io.ioexception; must \ be caught or declared to be thrown Javakurs 13: Exceptions - Lorenz Schauer 12
13 Beispiel für checked Exceptions Beispiel: Thread.sleep(long millis) wirft eine InterruptedException Diese ist checked und muss behandelt werden! Dazu 2 Möglichkeiten: Der Methodenaufruf sleep() muss mit dem entspr. try-catch Block umgeben werden Die umgebene Methode muss explizit deklarieren, dass diese Ausnahme innerhalb ihres Rumpfs geworfen werden kann. Dann muss diese Ausnahme beim Methodenaufruf der umgebenen Methode abgefangen oder wieder deklariert werden Javakurs 13: Exceptions - Lorenz Schauer 13
14 Beispiel für checked Exceptions public class FehlerhafteEingabe { public static void schlafen(int dauer){ try { Thread.sleep(dauer); catch (InterruptedException e) { e.printstacktrace(); public static void main(string[] args) { FehlerhafteEingabe.schlafen(2000); // Möglichkeit: Der Aufruf der Methode sleep() wird mit einem try-catch Block umzingelt, welcher die InterruptedExcpetion behandelt public class FehlerhafteEingabe { public static void schlafen(int dauer) throws InterruptedException{ Thread.sleep(dauer); public static void main(string[] args) { try { FehlerhafteEingabe.schlafen(2000); catch (InterruptedException e1) { e1.printstacktrace(); // Möglichkeit: Die Methode schlafen() deklariert explizit mit throws die InterruptedException Beim Methodenaufruf von schlafen() muss dann der Fehler abgefangen oder die umgebene Methode deklariert den Fehler mittels throws Statement Javakurs 13: Exceptions - Lorenz Schauer 14
15 Eigene Ausnahmen definieren Wie ganz normale Klassen können wir auch eigene Ausnahmeklassen definieren Dabei erben wir von der entsprechenden Exception, um uns in die Klassenhierarchie an der gewünschten Stelle einzuordnen. Bsp.: Wir definieren eine eigene RuntimeException (unchecked) public class FalseSquareRootException extends RuntimeException{ public FalseSquareRootException(){ super("kann Wurzel nicht berechnen"); Eigene Exception Klasse: Leerer Konstruktor belegt entsprechende Fehlermeldung public static double berechnewurzel(double x){ if(x<0){ throw new FalseSquareRootException(); return Math.sqrt(x); Die eigene Exception wird explizit geworfen mittels throw, wenn Wurzel auf einer negativen Zahl berechnet werden soll. Kann wieder abgefangen werden! Exception in thread "main" Exceptions.FalseSquareRootException: Kann Wurzel nicht berechnen at Exceptions.FehlerhafteEingabe.berechneWurzel(FehlerhafteEingabe.java:16) at Exceptions.FehlerhafteEingabe.main(FehlerhafteEingabe.java:25) Javakurs 13: Exceptions - Lorenz Schauer 15
16 Weitere Infos Jede Ausnahme kennt aus der geerbten Klasse Throwable u.a. die Methoden: printstacktrace(); Gibt den Typ und den Text der Fehlermeldung aus und zudem die Folge der Methodenaufrufe bis zur ihrer Auflösung. Standardausgabe (auch von Eclipse) String getmessage(); Gibt den String der reinen Fehlermeldung zurück try { result = FehlerhafteEingabe.berechneWurzel(-1); System.out.println(result); catch (FalseSquareRootException e2) { e2.printstacktrace(); Ausgabe: Exceptions.FalseSquareRootException: Kann Wurzel nicht berechnen at Exceptions.FehlerhafteEingabe.berechneWu rzel(fehlerhafteeingabe.java:16) at Exceptions.FehlerhafteEingabe.main(Fehle rhafteeingabe.java:27) // oder: catch (FalseSquareRootException e2) { System.out.println(e2.getMessage()); Ausgabe: Kann Wurzel nicht berechnen Javakurs 13: Exceptions - Lorenz Schauer 16
17 Programmieraufgabe zu Exceptions Erstellen Sie ein neues Eclipse-Projekt Uebung13 und schreiben Sie folgendes Programm: Legen Sie eine Array-Referenz vom Typ double[] an Fordern Sie nun den Benutzer auf, eine Ganzzahl einzugeben, welche die Größe des Arrays festlegen soll Erzeugen Sie nun das Array mit der Größe, die Sie vom Benutzer erhalten haben. Welche Fehler können dabei auftreten? Fange Sie jeden einzelnen Fehler gesondert in einem Catch-Block ab und reagieren Sie gesondert auf die falsche Nutzereingabe. Schreiben Sie auf jeden Fall Vielen Dank für Ihre Eingabe! auf die Konsole am Ende des Programms Javakurs 13: Exceptions - Lorenz Schauer 17
18 Programmieraufgabe zu Exceptions Schreibe Sie ein weiteres Programm in Ihrem zuvor erstellten Projekt Uebung13 : Schreiben Sie eine eigene Klasse Bruch, welche einen Dezimalbruch darstellen soll Die Klasse hat die beiden Instanzvariablen: Double zähler Double nenner Außerdem einen Konstruktor, welcher die beiden Instanzvariablen belegt Und einen leeren Konstruktor Daneben besitzt die Klasse die Methoden Setter- und Getter double berechnebruch(); Erzeugen Sie nun in Ihrer Main-Methode 2 Instanzen der Klasse Bruch Einmal mit dem leeren Konstruktor Und einmal mit dem Konstruktor, der Werte für Zähler und Nenner bekommt. Was passiert jeweils, wenn Sie die Methode berechnebruch() für Ihre beiden Instanzen aufrufen und sich das Ergebnis auf der Konsole anzeigen lassen wollen? Javakurs 13: Exceptions - Lorenz Schauer 18
19 Fortführung der Aufgabe: Programmieraufgabe zu Exceptions Schreiben Sie einen eigenen Fehler DivisionByZeroException und geben Sie diesem eine eindeutige Fehlermeldung mit. Bsp.: Hast du in der Schule nicht gelernt, dass man nicht durch 0 teilen darf? Werfen Sie den Fehler, wenn die Methode berechnebruch() durch 0 teilen will. Fangen Sie den Fehler an einer geeigneten Stelle ab und geben Sie statt dem Ergebnis die Fehlermeldung aus! Javakurs 13: Exceptions - Lorenz Schauer 19
Einführung in die Programmierung mit Java
Einführung in die Programmierung mit Java Teil 9: Ausnahmebehandlung Martin Hofmann Steffen Jost LFE Theoretische Informatik, Institut für Informatik, Ludwig-Maximilians Universität, München 8. Dezember
MehrAusnahmebehandlung. Ausnahmen werfen (auslösen) Eigene Ausnahmen definieren. Ausnahmen abfangen. Ausnahmen definieren
Ausnahmebehandlung Ausnahmen werfen (auslösen) Eigene Ausnahmen definieren Ausnahmen abfangen Ausnahmen definieren Sinnvolle Verwendung von Ausnahmen Informatik II: Objektorientierte SW-Entwicklung, Algorithmik,
MehrProgrammieren I. Fehlerbehandlung Exceptions. Heusch 2. Bd, 3 Ratz 10. Institut für Angewandte Informatik
Programmieren I Fehlerbehandlung Exceptions Heusch 2. Bd, 3 Ratz 10 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Exceptions und ihre Behandlung Exception - Ausnahmebedingung
MehrVorlesung 10. Sitzung Grundlegende Programmiertechniken
Vorlesung 10. Sitzung Grundlegende Programmiertechniken Wintersemester 2007/2008 Dozent Nino Simunic M.A. Computerlinguistik, Campus DU Grundlegende Programmiertechniken, WS 2007/2008 Objektorientierte
MehrKapitel 12: Ausnahmen und Ausnahmebehandlung
Einführung in die Informatik: Programmierung und Softwareentwicklung Wintersemester 2018/19 Kapitel 12: Ausnahmen und Ausnahmebehandlung Prof. Dr. David Sabel Lehr- und Forschungseinheit für Theoretische
MehrGrundlagen der Programmierung Prof. H. Mössenböck. 16. Ausnahmen (Exception Handling)
Grundlagen der Programmierung Prof. H. Mössenböck 16. Ausnahmen (Exception Handling) Motivation Fehler können nicht immer dort behandelt werden, wo sie auftreten void p() { q(); Lösung void q() { r();
MehrObjektorientierte Programmierung. Kapitel 9: Exceptions I
9. Exceptions I 1/37 Objektorientierte Programmierung Kapitel 9: Exceptions I Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2014/15 http://www.informatik.uni-halle.de/ brass/oop14/
Mehr9. Ausnahmebehandlung
9. Ausnahmebehandlung Java-Beispiele: Ausnahme.java TryCatch.java TryCatchAll.java Finally.java TryInTry.java KeyboardTry.java Oeffnungszeit.java Version: 11. Jan. 2016 Schwerpunkte Ausnahmen und Laufzeitfehler
MehrAbschnitt 7: Weitere Konzepte der oo Programmierung in Java
Abschnitt 7: Weitere Konzepte der oo Programmierung in Java 7. Weitere Konzepte der oo Programmierung in Java 7.1 Peer Kröger (LMU München) Einführung in die Programmierung WS 14/15 596 / 627 Überblick
Mehr15 Fehlerobjekte: Werfen, Fangen, Behandeln
Tritt während der Programm-Ausführung ein Fehler auf, wird die normale Programm-ausführung abgebrochen und ein Fehlerobjekt erzeugt (geworfen). Die Klasse Throwable fasst alle Arten von Fehlern zusammen.
Mehr15 Fehlerobjekte: Werfen, Fangen, Behandeln. Idee. Fehlerklassen. Fehlerklassen
Idee Tritt während der Programm-Ausführung ein Fehler auf, wird die normale Programm-ausführung abgebrochen und ein Fehlerobjekt erzeugt (geworfen). Die Klasse Throwable fasst alle Arten von Fehlern zusammen.
Mehr1 Fehler-Objekte: Werfen, Fangen, Behandeln
1 Fehler-Objekte: Werfen, Fangen, Behandeln Tritt während der Programm-Ausführung ein Fehler auf, wird die normale Programm-ausführung abgebrochen und ein Fehler-Objekt erzeugt (geworfen). Die Klasse Throwable
MehrKapitel 9. Ausnahmebehandlung in Java. Skript zur Vorlesung Einführung in die Programmierung
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Kapitel 9 Ausnahmebehandlung in Java Skript zur Vorlesung Einführung in die Programmierung im Wintersemester 2012/13
MehrEinführung in die Programmierung für NF. Fehler und Ausnahmen
Einführung in die Programmierung für NF Fehler und Ausnahmen Ziele Fehlerquellen in Programmen und bei der Programmausführung verstehen Das Java- Konzept der Ausnahmen als Objekte kennenlernen Ausnahmen
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 12/13. Kapitel 11. Fehler und Ausnahmen
1 Kapitel 11 Ziele 2 Fehlerquellen in Programmen und bei der Programmausführung verstehen Das Java-Konzept der Ausnahmen als Objekte kennenlernen Ausnahmen auslösen können Ausnahmen behandeln können Fehlerhafte
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 13/14. Kapitel 11. Fehler und Ausnahmen
1 Kapitel 11 Ziele 2 Fehlerquellen in Programmen und bei der Programmausführung verstehen Das Java-Konzept der Ausnahmen als Objekte kennenlernen Ausnahmen auslösen können Ausnahmen behandeln können Fehlerhafte
MehrAusnahmen (Exceptions)
Ausnahmen (Exceptions) Herkömmliche Fehlerbehandlung Jede Methode liefert einen Fehlercode int result; result = p(); if (result == ok) { result = q(); if (result == ok) { result = r(); if (result == ok)
MehrSelectionsort Beispiel
Selectionsort Arbeitsweise Durchsuche das Array ab Pos. 1 nach dem kleinsten Element Vertausche das gefundene Element mit dem ersten Durchsuche das Array ab Pos. 2 nach dem kleinsten Element Vertausche
Mehr15 Fehlerobjekte: Werfen, Fangen, Behandeln
Tritt während der Programm-Ausführung ein Fehler auf, wird die normale Programm-ausführung abgebrochen und ein Fehlerobjekt erzeugt (geworfen). Die Klasse Throwable fasst alle Arten von Fehlern zusammen.
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 14/15. Kapitel 11. Fehler und Ausnahmen 1
Kapitel 11 Fehler und Ausnahmen Fehler und Ausnahmen 1 Ziele Fehlerquellen in Programmen und bei der Programmausführung verstehen Das Java-Konzept der Ausnahmen als Objekte kennenlernen Ausnahmen auslösen
MehrExceptions. INE2 M. Thaler, Office TG ZHAW, M. Thaler, K. Rege, G. Burkert, E. Bazzi
Exceptions INE2 M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was geht es? Datei öffnen Ausnahmesituation Exception Behandlung der Situation: exception handling Mögliche Ursachen falscher
Mehr9. Ausnahmebehandlung
Schwerpunkte Ausnahmen und Laufzeitfehler 9. Ausnahmebehandlung Java-Beispiele: Ausnahme.java TryCatch.java TryCatchAll.java Finally.java TryInTry.java KeyboardTry.java Oeffnungszeit.java Stack-Trace Java-Ausnahmeklassen-Hierarchie
MehrÜberblick. Peer Kröger (LMU München) Einführung in die Programmierung WS 16/ / 854
Überblick 9. Weitere Konzepte der oo Programmierung in Java 9.1 Vererbung, abstrakte Klassen, Polymorphismus 9.2 Interfaces 9.3 9.4 Polymorphie versus Typsicherheit Peer Kröger (LMU München) Einführung
MehrProf. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Ausnahmen
Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik Ausnahmen Motivation Anwendungsbeispiel 1: java Excep1 a: 15 b: 3 a / b = 5 Job done. Konsole Anwendungsbeispiel 2: Konsole java
Mehr15 Fehlerobjekte: Werfen, Fangen, Behandeln
15 Fehlerobjekte: Werfen, Fangen, Behandeln Tritt während der Programmausführung ein Fehler auf, wird die normale Programmausführung abgebrochen und ein Fehlerobjekt erzeugt (geworfen). Die Klasse Throwable
Mehr15 Fehlerobjekte: Werfen, Fangen, Behandeln. Idee. Fehlerklassen. Fehlerklassen
15 Fehlerobjekte: Werfen, Fangen, Behandeln Idee Tritt während der Programmausführung ein Fehler auf, wird die normale Programmausführung abgebrochen und ein Fehlerobjekt erzeugt (geworfen). Die Klasse
Mehr15 Fehlerobjekte: Werfen, Fangen, Behandeln
15 Fehlerobjekte: Werfen, Fangen, Behandeln Tritt während der Programmausführung ein Fehler auf, wird die normale Programmausführung abgebrochen und ein Fehlerobjekt erzeugt (geworfen). Die Klasse Throwable
MehrÜbungen zu Middleware Universität Erlangen-Nürnberg Informatik 4, 2007 Z-Java-Exceptions.fm
Z.11Fehlerbehandlung Programm beenden (System.exit()) meist eine schlechte Idee Ausgabe einer Fehlermeldung hilft nicht den Fehler zu überwinden spezieller Rückgabewert kennzeichnet Fehler Konstruktoren
MehrVorlesung Informatik II
Vorlesung Informatik II Universität Augsburg Wintersemester 2011/2012 Prof. Dr. Bernhard Bauer Folien von: Prof. Dr. Robert Lorenz Lehrprofessur für Informatik 13. Java Ausnahmebehandlung 1 Motivation
MehrUmgang mit Fehlern. Sinn von Ausnahme-/Fehlerobjekten Dokumentation Umgang mit Fehlern Eigene Fehlerklassen
Umgang mit Fehlern Sinn von Ausnahme-/Fehlerobjekten Dokumentation Umgang mit Fehlern Eigene Fehlerklassen Die Java-Fehlerbehandlung stellt gegenüber älteren Verfahren einen großen Fortschritt dar. Prof.
MehrKapitel 11: Ausnahmebehandlung
Universität München, Hans-Peter Kriegel und Thomas Seidl Informatik II -242 Kapitel 11: Ausnahmebehandlung Ausnahmen (Exceptions) Signalisierung von Fehlern und unerwünschten Situationen zur Laufzeit.
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 04: Variablenzugriff und Eingaben Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Zugriff auf Instanzvariablen Praktisches Beispiel: Student
MehrEINFÜHRUNG IN DIE PROGRAMMIERUNG
EINFÜHRUNG IN DIE PROGRAMMIERUNG FORTGESCHRITTENE KONZEPTE Tobias Witt!! 26.03.2014 FEHLERBEHANDLUNG KLASSISCHER ANSATZ Fehlercode als Rückgabewert von Methoden! String Fehlercode als String! int Fehlercode
MehrGrundlagen der Fehlerbehandlung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 06: Ausnahme- und Fehlerbehandlung in Java.
Universität Osnabrück 1 Grundlagen der Fehlerbehandlung 3 - Objektorientierte Programmierung in Java Vorlesung 06: Ausnahme- und Fehlerbehandlung in Java SS 2006 Prof. Dr. F.M. Thiesing, FH Osnabrück Wenn
MehrSortieralgorithmen. Nachfolgend wird die Menge der ganzen Zahlen und die darauf definierte Relation betrachtet.
Sortieralgorithmen [http://de.wikipedia.org/wiki/topologische_sortierung] Die zu sortierenden Objekte müssen bezüglich einer Vergleichsbeziehung teilweise angeordnet werden können, damit sie sortierbar
MehrII.4.4 Exceptions - 1 -
1. Unterklassen und Vererbung 2. Abstrakte Klassen und Interfaces 3. Modularität und Pakete 4. Ausnahmen (Exceptions) 5. Generische Datentypen 6. Collections II.4.4 Exceptions - 1 - Ausnahmen (Exceptions)
MehrJava Einführung Exception Handling. Kapitel 17
Java Einführung Exception Handling Kapitel 17 Inhalt Was sind Exceptoins? Wie werden sie ausgelöst? Wie kann man Exceptions behandeln? Erweiterung von Exceptions Spezialfall IO 2 Ausnahmezustände Im Ablauf
Mehr! 1. Unterklassen und Vererbung! 2. Abstrakte Klassen und Interfaces! 3. Modularität und Pakete! 4. Ausnahmen (Exceptions) II.4.
! 1. Unterklassen und Vererbung! 2. Abstrakte Klassen und Interfaces! 3. Modularität und Pakete! 4. Ausnahmen (Exceptions) II.4.4 Exceptions - 1 - Ausnahmen (Exceptions( Exceptions) Treten auf, wenn zur
MehrAusnahmen. Exceptions. Definition Ausnahmen erzeugen Ausnahmen abfangen Ausnahmen weiterleiten. Dr. Beatrice Amrhein
Ausnahmen Exceptions Definition Ausnahmen erzeugen Ausnahmen abfangen Ausnahmen weiterleiten Dr. Beatrice Amrhein Definition 2 Definition: Ausnahme (Exception) In C# werden Fehler, die zur Laufzeit im
MehrMögliche Implementierung von intern():
Mögliche Implementierung von intern(): public class String { private static int n = 1024; private static List[] hashset = new List[n]; public String intern() { int i = (Math.abs(hashCode()%n);
MehrJava : Fehlerbehandlung.
Java : Fehlerbehandlung Prinzip Callerklassen / Workerklassen Arbeitet... Callerklasse Arbeitet... Workerklasse Arbeitet... Arbeitet weiter... Fer7g! Prinzip Callerklassen / Workerklassen Main- Methode
MehrObjektorientierte Programmierung. Kapitel 9: Exceptions I
Stefan Brass: OOP (Java), 9. Exceptions I 1/37 Objektorientierte Programmierung Kapitel 9: Exceptions I Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2014/15 http://www.informatik.uni-halle.de/
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 08: Mehr zu Klassen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme 1. Teil: Wiederholung Heutige Agenda Verwendung der ArrayList 2. Teil: Weitere Aspekte der OO
MehrKomponenten-basierte Entwicklung Teil 4: Exceptions
Komponenten-basierte Entwicklung Teil 4: Exceptions 31.10.14 1 Definitionen I Exception = Ausnahme = Situation, in der während einer Operation eine der Bedingungen des Typs bzw. der Klasse verletzt wird
MehrProgrammiertechnik Ausnahmen
Programmiertechnik Ausnahmen Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Motivation public class Excep1 { public void doyourjob() { Scanner scanner = new Scanner(System.in); System.out.print("a:
MehrListe Programmieren Java Überblick
Liste Programmieren Java Überblick 1 Was ist Java? 2 Klassen und Objekte 3 Vererbung 4 Schnittstellen 5 Innere Klassen 7 Funktionsbibliothek 8 Datenstrukturen und Algorithmen 9 Ein-/Ausgabe 10 Threads
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 03: Wiederholung und Nutzereingaben Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Wiederholung Klassen, Objekte, Attribute und Methoden
MehrZuverlässigkeit von Programmen: Behandlung von Ausnahmesituationen
Zuverlässigkeit von Programmen: Behandlung von Ausnahmesituationen 6.1 Behandlung von Ausnahmesituationen 6.3 Die Zusicherungsanweisung 6.1 Behandlung von Ausnahmesituationen 6-1 ArithmeticException import
Mehr9. Fehler und Ausnahmen Grundlagen der Programmierung 1 (Java)
9. Fehler und Ausnahmen Grundlagen der Programmierung 1 (Java) Fachhochschule Darmstadt Haardtring 100 D-64295 Darmstadt Prof. Dr. Bernhard Humm FH Darmstadt, 13. Dezember 2005 Einordnung im Kontext der
MehrEINFÜHRUNG IN DIE PROGRAMMIERUNG
EINFÜHRUNG IN DIE PROGRAMMIERUNG FORTGESCHRITTENE KONZEPTE Tobias Witt 26.03.2014 tobias.witt@hhu.de 25.12.01.30 Bürozeiten: 09 Uhr - 12 Uhr FEHLERBEHANDLUNG KLASSISCHER ANSATZ Fehlercode als Rückgabewert
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 11: Vererbung Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil Einführung in die Vererbung Motivation Das Schlüsselwort extends Einführendes
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 09: Vererbung Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil Einführung in die Vererbung Motivation Das Schlüsselwort extends Einführendes
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 06: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von
MehrJavakurs für Fortgeschrittene
Javakurs für Fortgeschrittene Einheit 07: Nebenläufigkeit Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda Einführung in die Nebenläufigkeit und Java Thread Konzept: Motivation
MehrKapitel 10. Programmierkurs. Grundlagen von Exceptions Behandlung von Exceptions
Kapitel 10 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Exceptions Behandlung von Exceptions Verschiedene Exceptions Mehrere catch-anweisungen Der finally-block WS
MehrGliederung Grundlagen Schlüsselworte try-catch Fehlerobjekte Fehlerklassen Schlüsselwort finally Schlüsselwort throws selbst erstellte Exceptions
try-catch Schlüsselworte try-catch e Schlüsselwort Schlüsselwort selbst erstellte ermöglichen die Behandlung von Fehlern, die zur Laufzeit entstehen. try-catch in C: Fehler führt immer zum Abbruch des
MehrAusnahmen. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Fehlerarten Bei der Programmierung können viele Arten von Fehlern auftreten:
MehrAusnahmen. Dr. Philipp Wendler. Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung
Dr. Philipp Wendler Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung WS18/19 https://www.sosy-lab.org/teaching/2018-ws-infoeinf/ Fehlerarten Bei der Programmierung
MehrAusnahmen. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Annabelle Klarl Zentralübung zur Vorlesung : http://www.pst.ifi.lmu.de/lehre/wise-12-13/infoeinf WS12/13 Fehlerarten Bei der Programmierung können viele Arten von Fehlern auftreten: Syntaktische Fehler
MehrAusnahmen. Philipp Wendler. Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung
Philipp Wendler Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung https://www.sosy-lab.org/teaching/2017-ws-infoeinf/ WS17/18 Fehlerarten Bei der Programmierung
MehrEinführung in die Programmierung
Einführung in die Programmierung Teil 9: Ausnahmebehandlung Prof. Dr. Peer Kröger, Florian Richter, Michael Fromm Wintersemester 2018/2019 Robuste Programme durch Ausnahmebehandlung Eine Ausnahme (Exception)
MehrEinführung in die Programmierung für NF
Einführung in die Programmierung für NF Fehler und Ausnahmen Valerie Holmeier Michael Kirsch Direct Feedback Eure Mitarbeit ist mir wich@g Quiz nach den jeweiligen AbschniDen Jeder kann mitmachen App socra&ve
MehrEinstieg in die Informatik mit Java
1 / 16 Einstieg in die Informatik mit Java Ausnahmen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 16 1 Übersicht Ausnahmen 2 Klassenhierarchie 3 Try-Catch-Blöcke 4 Definition
MehrWo sind wir? Rudolf Berrendorf FH Bonn-Rhein-Sieg Programmiersprache Java 280
Wo sind wir? Java-Umgebung Lexikale Konventionen Datentypen Kontrollstrukturen Ausdrücke Klassen, Pakete, Schnittstellen JVM Exceptions Java Klassenbibliotheken Ein-/Ausgabe Collections Threads Applets,
Mehr1 Organisatorisches. 2 Compilezeit- und Laufzeitfehler. 3 Exceptions. 4 Try-Catch-Finally
Themen der Übung CoMa-Übung VI 1 Organisatorisches Compilezeit- und Laufzeitfehler 3 Try-Catch-Finally TU Berlin 8.11.01 Bewertung der OA 5 fehlerhaft, Madeleine arbeitet dran CoMa-Übung VI (TU Berlin)
MehrJava Fehlerbehandlung
Java Fehlerbehandlung 1 Fehlerbehandlung In jedem nicht-trivialen Programm kann es während der Laufzeit zu Fehlersituationen kommen. Dabei handelt es sich nicht unbedingt um Programmierfehler: z. B.: Programm
MehrExceptions. CoMa-Übung VII TU Berlin. CoMa-Übung VII (TU Berlin) Exceptions / 1
Exceptions CoMa-Übung VII TU Berlin 7.11.013 CoMa-Übung VII (TU Berlin) Exceptions 7.11.013 1 / 1 Themen der Übung 1 Compilezeit- und Laufzeitfehler Exceptions 3 Try-Catch-Finally CoMa-Übung VII (TU Berlin)
MehrExceptions. CoMa-Übung VI TU Berlin. CoMa-Übung VI (TU Berlin) Exceptions / 19
Exceptions CoMa-Übung VI TU Berlin 8.11.01 CoMa-Übung VI (TU Berlin) Exceptions 8.11.01 1 / 19 Themen der Übung 1 Organisatorisches Compilezeit- und Laufzeitfehler 3 Exceptions 4 Try-Catch-Finally Bewertung
MehrAusnahmen. Gilbert Beyer und Annabelle Klarl. Einführung in die Informatik. Zentralübung zur Vorlesung Einführung in die Informatik
Ausnahmen Zentralübung zur Vorlesung http://www.pst.ifi.lmu.de/lehre/wise-11-12/infoeinf WS11/12 Inhalte der heutigen Vorlesung: Arten von Fehlern Auslösen von Ausnahmen Vermeiden von Ausnahmen Ausnahmeklassen
MehrRobuste Programme durch Ausnahmebehandlung
2 Robuste Programme durch Ausnahmebehandlung Martin Wirsing Ziele Lernen robuste Programme zu schreiben Ausnahmen als Objekte verstehen lernen Bedeutung von Ausnahmen erkennen in der Signatur und im Rumpf
MehrAusnahmen. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java 27.6.
Ausnahmen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 27.6.07 G. Bohlender (IANM UNI Karlsruhe) Ausnahmen 27.6.07 1 / 8 Übersicht 1 Einführung
MehrAusnahmen. Dr. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Dr. Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-16-17/infoeinf WS16/17 Action required now 1. Smartphone: installiere die App "socrative
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 05: Programmablauf Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Nutzereingaben EVA Prinzip Eingaben über die Konsole Eingaben über GUI
MehrII.4.4 Exceptions - 1 -
n 1. Unterklassen und Vererbung n 2. Abstrakte Klassen und Interfaces n 3. Modularität und Pakete n 4. Ausnahmen (Exceptions) n 5. Generische Datentypen n 6. Collections II.4.4 Exceptions - 1 - Ausnahmen
MehrSoll die Programm-Ausführung nicht beendet werden, muss der Fehler abgefangen werden. NumberFormatException
Soll die Programm-Ausführung nicht beendet werden, muss der Fehler abgefangen werden. Beispiel: NumberFormatException public class Adding extends MiniJava { public static void main(string[] args) { int
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 04: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von
MehrSoftwareentwicklung II (IB) Exceptions. Prof. Dr. Oliver Braun. Fakultät für Informatik und Mathematik Hochschule München
Softwareentwicklung II (IB) Exceptions Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 25.06.2018 07:23 Inhaltsverzeichnis Exceptions 1 Idee.........................................
Mehr9. Ausnahmebehandlung
9. Ausnahmebehandlung 9.1 Motivation: Defensives Programmieren 9.2 Anforderungen an Programmiersprachen 9.3 Ausnahmebehandlung in Java 9.4 Laufzeitfehler und Ausnahmen 9.5 Aufräumarbeiten 9.6 C# und Java,
MehrJohannes Unterstein - TINF16 - Java - Sommersemester 2017 JAVA. Weiterführende Spracheigenschaften
JAVA Weiterführende Spracheigenschaften 100 AGENDA Strings Exceptions Enums Generics Lambdas & Methods Bulk-Operations 101 DIE KLASSE STRING Zeichenketten werden in Java als String repräsentiert Wie der
MehrExceptions. Softwareentwicklung II (IB) Prof. Dr. Oliver Braun Letzte Änderung: :23. Exceptions 1/37
Exceptions Softwareentwicklung II (IB) Prof. Dr. Oliver Braun Letzte Änderung: 25.06.2018 07:23 Exceptions 1/37 Exceptions Exceptions 2/37 Idee (1/3) Laufzeitfehler = Probleme im ablaufenden Programm (im
MehrJavakurs für Anfänger
Javakurs für Anfänger Einheit 10: Mehr zur Vererbung und abstrakte Klassen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Mehr zur Vererbung Methoden vererben und überschreiben
Mehr7. Java Fehler und Ausnahmen
Fehler und Ausnahmen in Java 7. Java Fehler und Ausnahmen Fehler und Ausnahmen unterbrechen die normale Programmausführung abrupt und stellen eine nicht geplantes Ereignis dar. Ausnahmen sind böse, oder
MehrEinführung in die Informatik
Einführung in die Informatik Jochen Hoenicke Software Engineering Albert-Ludwigs-University Freiburg Sommersemester 2014 Jochen Hoenicke (Software Engineering) Einführung in die Informatik Sommersemester
MehrExceptions - Klausuraufgaben
Exceptions - Klausuraufgaben (1.) Exception ist.! (a.) eine Klasse (b.) eine Schnittstelle (c.) abstrakte Klasse (d.) Keines davon (2.) Exception is in dem Java Package! (a.) java.lang (b.) java.util (c.)
MehrException. 6. Exceptions. Die Klasse java.lang.exception. Fehlermeldung. Klassenname. Ort des Auftretens
6. Exceptions Exception Hintergrund: Programmieren auf der Basis von Verträgen Kundenklasse Lieferantenklasse Eine Exception ist ein Objekt, das Informationen über einen Programmfehler enthält. Eine Exception
MehrProgrammierung für Mathematik HS11
software evolution & architecture lab Programmierung für Mathematik HS11 Übung 8 1 Aufgabe: Codeverständnis (Repetition) 1.1 Lernziele 1. Code verstehen können. 2. Fehler im Code finden und korrigieren
MehrObjektorientierte Programmierung. Kapitel 13: Exceptions
Stefan Brass: OOP (Java), 13. Exceptions 1/39 Objektorientierte Programmierung Kapitel 13: Exceptions Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/
MehrExceptions. Prof. Dr. Margarita Esponda SS 2012. M. Esponda-Argüero
Exceptions Prof. Dr. Margarita Esponda SS 2012 1 Ausnahmen Eine Ausnahme (Exception) ist ein Fehler oder ein nicht geplantes Ereignis, das während der Ausführung eines Programms vorkommt und dessen normalen
Mehr