Grundproblematik bei Fehlersituationen

Größe: px
Ab Seite anzeigen:

Download "Grundproblematik bei Fehlersituationen"

Transkript

1 Name Klasse Datum 1 Grundproblematik bei Fehlersituationen Fehler können in vielen Situationen passieren. Fehlerhafte Eingaben, Files sind nicht mehr dort, wo sie erwartet werden, der Server ist plötzlich nicht mehr erreichbar usw. Der Aufrufer eines Unterprogramms muss in solch einer Situation informiert werden. Dies wird üblicherweise mit Hilfe des Rückgabewertes erledigt. Im nebenstehenden Code berechnet eine Methode einen Prozentwert auf Basis der beiden Parameter. Hierbei kann eine Division durch 0 erfolgen, welche wir vorher abprüfen. Wenn die 0 im Nenner auftreten würde, so können wir die Berechnung aussetzen und eine Fehlermeldung an den Aufrufer zurückschicken. Dies Funktioniert soweit ganz gut, sofern wir den Rückgabewert der Methode nur für Ausgaben benötigen. Sehen wir uns aber mal den folgenden Code an: Hier muss die Methode eine double Wert zurückgeben. Jeder Wert könnte aber aus einer korrekten Rechnung entstehen. Es gibt also keinen double Wert, der für eine Fehlererkennung verwendet werden könnte. Die 0, wie es hier im Code eingetragen ist wäre somit falsch! Bevor wir uns nun ansehen, wie die Lösung dieses Problems sein könnte, sehen wir uns noch eine zweite Situation an, welche mit einem speziellen Fehlerrückgabewert nicht gelöst werden kann. Hierzu erstellen wir einen Konstruktor mit einem Parameter. Wenn dieser jedoch nicht den Erwartungen entspricht, müssten wir hier ebenfalls an den Aufrufer eine Fehlernachricht senden. ANPR_Exceptions_v01.docx Seite 1

2 Ein Konstruktor gibt aber immer nur das erzeugte automatisch Objekt zurück ohne irgendein return Statement. Das heißt, wir haben hier ebenfalls keine Möglichkeit die Fehlersituation an den Aufrufenden zu melden. 2 Die Lösung ein eigener Informationskanal Das Hauptproblem ist eigentlich, dass wir immer nur einen Rückgabewert formulieren können. Könnten wir zwei Rückgabewerte weiterreichen, so wären einer für die Fehlermeldung und einer für das Verarbeitungsergebnis nutzbar. Die tatsächliche Lösung ist in der Tat ein ähnliches Konzept. Es gibt einen weiteren Kanal für die Meldung von Fehlern: Diese Fehler werden Ausnahmefehler oder Exceptions genannt. Sie werden nicht einfach zurückgegeben, sondern sie werden geworfen. Wir werden uns gleich ansehen, warum man einen solch merkwürdigen Namen gegeben hat. Warum macht man das eigentlich so umständlich? Wieso kann eine Methode nicht einfach zwei Rückgabewerte haben? Antwort: Prinzipiell wäre dies auch möglich. Die Einführung eines eigenen Informationskanals für Exceptions hat aber noch ein paar Vorteile. Zum einen wird die gesamte Verarbeitung unterbrochen da ja ein Fehler aufgetreten ist und Java somit davon ausgeht, dass die weitere Verarbeitung keinen Sinn mehr macht. Weiterhin können die Fehler innerhalb der Aufrufhierarchie sehr einfach weitergegeben werden. Dieses Konzept wird in den nächsten Kapiteln näher erklärt. 3 Der Weg einer Exception Java kennt von Haus aus viele Exceptions (also Ausnahmefehler) welche immer dann auftreten, wenn der ordentliche Ablauf des Programms nicht mehr gewährleistet werden kann. Beispielhalft sei hier die Null- PointerException genannt, welche immer dann auftritt wenn wir in einer Variablen auf eine Objektmethode oder Objekteigenschaft zugreifen wollen, die einen NULL Wert aufweist. Die Standardexceptions haben ein paar praktische Funktionalitäten eingebaut. Sie können bspw. den Stacktrace als Fehlermeldung in der Konsole ausgeben ( printstacktrace() ). Was ist eigentlich der Stack? Antwort: Der Stack ist eigentlich eine Speicherstruktur (Stapel- oder Kellerspeicher). Im Zusammenhang mit Exceptions meint man damit primär die Aufrufstruktur (welche ja auch im Speicher existiert) unserer Programme. Wenn also die main Methode eine weitere Methode (bspw. checkage() ) aufruft und diese wiederum Integer.parseInt(), dann befinden sich im Stack genau diese drei Methoden als Stapel übereinander. Der Stacktrace ist wiederum die Ausgabe dieser Hierarchie. Seite 2

3 Exceptions Sehen wir uns nun mal ein Programm an, welches eine Exception erzeugen könnte und was sie mit unserem Programm machen würde: Es gibt im Wesentlichen zwei wunde Punkte in diesem Programm. Der erste wäre die Eingabe eines Strings, der nicht in eine Zahl umgewandelt werden könnte und somit eine NumberFormatException auftreten würde. Das zweite Problem wäre ein Abbruch der JOptionPane, was in die Variable seingabealter einen null Wert zur Folge hätte. Dadurch würde der Befehl seingeabealter.equals("nn") zu einer Null- PointerException führen. Gehen wir mal von der Eingabe abcde aus, was die unten stehende NumberFormatException auf den Bildschirm zaubert: Das System würde also automatisch einen Stacktrace auf der Konsole ausgeben. Weiterhin würde die Programmverarbeitung sofort stoppen. Der Fehler wird also einfach durchgereicht, bis er in der JVM (Java Virtual Machine) auftrifft. Dort wird standardmäßig der Stacktrace ausgegeben. 4 Aufhalten der Fehler Da eine Exception erstmal die Abarbeitung unterbricht, das aber im Regelfall nicht vom Programmierer gewünscht ist, müssen wir nun etwas tun! Exceptions können wir uns wie eine Art Rohrpost vorstellen, welche vom Entstehungsort bis zur JVM laufen. Wenn sie auf diesem Weg niemand in die Hand nimmt (bzw. auffängt ), dann wird sie das Ziel erreichen und das Programm wird beendet. Insofern müssen wir nun versuchen, diese Exception zu fangen. Hierzu öffnen wir einen gesicherten Bereich mit dem Schlüsselwort try. Die geschweiften Klam- Seite 3

4 mern markieren diesen Bereich. Anschließend folgt catch und in Klammern die Art der Fehler, welche aufgefangen werden sollen. Wenn alle Typen von Exceptions gefangen werden sollen, schreibt man hier einfach Exception e rein also eine beliebige Exception, welche dann in der Variablen e landet. Danach folgt die Fehlerbehandlung (in unserem Fall wird lediglich eine Ausgabe gemacht). Nun wird der Code ganz normal weitergeführt die Methode wird also nicht abgebrochen. Ich kann die Exception aber auch eine Ebene tiefer im Stack abfangen. Im rechten Bild wird lediglich der Aufruf checkage überwacht. Eventuelle Exceptions dort werden ja wieder weitergereicht und können somit auch hier gefangen werden. Die Ausgabe der Fehlermeldung erfolgt wiederum im catch Block. 5 Selektives Auffangen Ein Nachteil unseres Codes ist nun, dass wir zwischen den verschiedenen Fehlerarten nicht unterscheiden können. Der catch Block fängt ja alle Fehler auf und unterscheidet somit nicht zwischen unseren beiden möglichen Exceptions, der NullPointerException und der NumberFormatException. Aber auch hier ist eine Lösung parat. Wir können den catch Block kaskadieren. Hierzu schreiben wir einfach mehrere catch Blöcke untereinander. Wir beginnen mit dem catch Block der NumberFormatException, anschließend der catch Block für die NullPointerException. Da keine weiteren Exceptions auftreten können, sind keine weiteren Blöcke notwendig. Wenn ich aber einen Exceptiontyp vergessen würde, dann würde dieser auch wieder bis zur JVM durchgereicht werden. Da Exceptions auch Hierarchien unterliegen, sollten die Exception immer von der speziellen hin zur allgemeinen Exception abgefangen werden. Im Extremfall fängt der letzte catch Block eine Exception, was also die allgemeinste Exception wäre. 6 Eigene Exceptions Ja, man kann auch eigene Exceptions realisieren. Dies wird häufig dann gemacht, wenn man ein ausgefeiltes Errorhandling mit automatischem Logging und ähnlichen Spielereien realisieren muss. Hierzu muss man seine Exception immer von der Exception Klasse ableiten. Sehen wir uns mal einen Code für eine eigene Exception an. Wir behandeln unsere Exceptions wie ganz normale Klassen. Sie haben einen Konstruktor und beliebig viele Methoden. Üblicherweise werden alle notwendigen Informationen gleich über den Konstruktor übergeben, damit das Erzeugen unserer Exception Seite 4

5 Exceptions möglichst einfach in einer Zeile durchgeführt werden kann. In unserem Beispiel implementieren wir einfach eine individuelle Nachricht, welche später ausgelesen werden kann. So, nun müssen wir diese Exception nur noch erzeugen (bzw. da sie ja gefangen werden kann, werfen wir sie). Hierzu bauen wir diesen Code in unsere checkage Methode ein: Wir erzeugen an den entsprechenden Stellen also unsere Exception und platzieren eine individuelle Nachricht. Danach werfen wir die Exception mit throw, so dass der Aufrufende sie wiederum fangen kann. Der Code der Methode wird an dieser Stelle natürlich abgebrochen. Der Aufrufende muss jetzt nur noch auf MyException hören und kann die Information auswerten. Wir erinnern uns: im catch Block spezifizieren wir die Exception, welche wir auffangen möchten. Das geschieht über den Klassennamen der Exception (in unserem Fall MyException ). Danach folgt der Variablenname (in unserem Fall habe ich das Ding myexception getauft). Das ist also nichts Weiteres als eine Deklaration einer lokalen Variablen, so wie wir das auch schon von der Parameterliste unserer Methoden kennen. Also können wir auf innerhalb der geschweiften Klammern einfach darauf zugreifen. 7 Finally schnell noch aufräumen Die oben beschriebene Methodik hat noch einen kleinen Haken. Wenn wir bspw. im try Block ein File öffnen wollen, dann können wir nicht einfach eine neue Exception werfen, da wir das File ja vorher noch schließen müssen. Hier kommt das finally ins Spiel. Sehen wir uns dazu mal den folgenden Code an. Hier fangen wir wie gehabt die Exceptions und werfen unsere eigenen. Wenn wir im Code bspw. die Null- PointerException provozieren, dann sehen wir auf der Konsole trotzdem noch die Nachricht Test beendet.. Dies bedeutet, dass der finally Block noch bearbeitet wird, bevor unsere Exception erzeugt und geworfen wird, was ja die Ausführung der Methode beendet. Weiterhin ist zu beachten, dass finally auch dann verarbeitet wird, wenn keine Exception gefangen wurde. Dies ist also der richtige Ort um aufzuräumen, also noch Files oder Datenbankverbindungen zu schließen. Seite 5

6 8 Lizenz Diese(s) Werk bzw. Inhalt von Maik Aicher ( steht unter einer Creative Commons Namensnennung - Nicht-kommerziell - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz. Seite 6

Unterprogramme. AnPr. Wiederholungen im Code werden vermieden. Programme werden leichter lesbar. Die Entwicklung und der Test werden vereinfacht.

Unterprogramme. AnPr. Wiederholungen im Code werden vermieden. Programme werden leichter lesbar. Die Entwicklung und der Test werden vereinfacht. Name Klasse Datum 1 Allgemeines Programme werden üblicherweise nicht als ein einziger, fortlaufender Programmcode verfasst, sondern mit geeigneten Mitteln unterteilt und somit strukturiert. Die Methodik

Mehr

1 Organisatorisches. 2 Compilezeit- und Laufzeitfehler. 3 Exceptions. 4 Try-Catch-Finally

1 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)

Mehr

Exceptions. CoMa-Übung VII TU Berlin. CoMa-Übung VII (TU Berlin) Exceptions / 1

Exceptions. 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)

Mehr

Exceptions. CoMa-Übung VI TU Berlin. CoMa-Übung VI (TU Berlin) Exceptions / 19

Exceptions. 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

Mehr

Grundlagen der Programmierung Prof. H. Mössenböck. 16. Ausnahmen (Exception Handling)

Grundlagen 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();

Mehr

Einführung in die Informatik

Einfü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

Mehr

1 Fehler-Objekte: Werfen, Fangen, Behandeln

1 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

Mehr

Ausnahmen. 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. 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

Mehr

Grundlagen der Fehlerbehandlung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 06: Ausnahme- und Fehlerbehandlung in Java.

Grundlagen 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

Mehr

Umgang 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 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.

Mehr

Kapitel 9. Ausnahmebehandlung in Java. Skript zur Vorlesung Einführung in die Programmierung

Kapitel 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

Mehr

HSR Rapperswil 2001 Markus Rigling. Programmieren: Exceptions Auflage

HSR Rapperswil 2001 Markus Rigling. Programmieren: Exceptions Auflage HSR Rapperswil 2001 Markus Rigling Programmieren: Exceptions 1 1. Auflage Inhaltsverzeichnis: 1. Was sind Exceptions?... 3 2. Struktur des Exception Handling... 3 3. Try-Block... 4 4. Exception Handler

Mehr

Programmieren I. Fehlerbehandlung Exceptions. Heusch 2. Bd, 3 Ratz 10. Institut für Angewandte Informatik

Programmieren 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

Mehr

Java : Fehlerbehandlung.

Java : Fehlerbehandlung. Java : Fehlerbehandlung Prinzip Callerklassen / Workerklassen Arbeitet... Callerklasse Arbeitet... Workerklasse Arbeitet... Arbeitet weiter... Fer7g! Prinzip Callerklassen / Workerklassen Main- Methode

Mehr

C# - Einführung in die Programmiersprache Fehler abfangen. Leibniz Universität IT Services Anja Aue

C# - Einführung in die Programmiersprache Fehler abfangen. Leibniz Universität IT Services Anja Aue C# - Einführung in die Programmiersprache Fehler abfangen Leibniz Universität IT Services Anja Aue Fehler in einem Programm Warnungen sind Hinweise auf eventuelle Fehler während der Laufzeit des Programms.

Mehr

Exceptions. INE2 M. Thaler, Office TG ZHAW, M. Thaler, K. Rege, G. Burkert, E. Bazzi

Exceptions. 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

Mehr

Ausnahmen (Exceptions)

Ausnahmen (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)

Mehr

Ausnahmen. Exceptions. Definition Ausnahmen erzeugen Ausnahmen abfangen Ausnahmen weiterleiten. Dr. Beatrice Amrhein

Ausnahmen. 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

Mehr

Umsetzungshilfe Java Teil 1

Umsetzungshilfe Java Teil 1 Name Klasse Datum 1 Allgemeines In unseren Programmen werden Daten eingegeben, verarbeitet und wieder ausgegeben (EVA-Prinzip). Da wir am Anfang noch keine sehr umfangreichen Programme erstellen, sind

Mehr

Java Fehlerbehandlung

Java 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

Mehr

Mögliche Implementierung von intern():

Mö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);

Mehr

Abschnitt 7: Weitere Konzepte der oo Programmierung in Java

Abschnitt 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

Mehr

Einführung in die Programmierung mit Java

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

Mehr

(Ausnahmebehandlung)

(Ausnahmebehandlung) 16. Exceptions (Ausnahmebehandlung) 16-1 Objektorientierte Programmierung (Winter 2010/2011) Kapitel 16: Exceptions (Ausnahmebehandlung) Motivation Throw und Catch 16. Exceptions (Ausnahmebehandlung) 16-2

Mehr

Übungen zu Middleware Universität Erlangen-Nürnberg Informatik 4, 2007 Z-Java-Exceptions.fm

Ü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

Mehr

Kapitel 11: Ausnahmebehandlung

Kapitel 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.

Mehr

Selectionsort Beispiel

Selectionsort 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

Mehr

15 Fehlerobjekte: Werfen, Fangen, Behandeln

15 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.

Mehr

15 Fehlerobjekte: Werfen, Fangen, Behandeln

15 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

9. Ausnahmebehandlung

9. 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

Mehr

9. Ausnahmebehandlung

9. 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

15 Fehlerobjekte: Werfen, Fangen, Behandeln. Idee. Fehlerklassen. Fehlerklassen

15 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

Mehr

15 Fehlerobjekte: Werfen, Fangen, Behandeln

15 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

15 Fehlerobjekte: Werfen, Fangen, Behandeln

15 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.

Mehr

15 Fehlerobjekte: Werfen, Fangen, Behandeln. Idee. Fehlerklassen. Fehlerklassen

15 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.

Mehr

Exceptions. Prof. Dr.-Ing. Thomas Schwotzer 21. November 2017

Exceptions. Prof. Dr.-Ing. Thomas Schwotzer 21. November 2017 Exceptions Prof. Dr.-Ing. Thomas Schwotzer 21. November 2017 1 Einführung Wir können Algorithmen mittels Java implementieren. Wir können Methoden implementieren. Das ist gut. Was kann bei der Ausführung

Mehr

Sortieralgorithmen. Nachfolgend wird die Menge der ganzen Zahlen und die darauf definierte Relation betrachtet.

Sortieralgorithmen. 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

Mehr

Ausnahmebehandlung. Ausnahmen werfen (auslösen) Eigene Ausnahmen definieren. Ausnahmen abfangen. Ausnahmen definieren

Ausnahmebehandlung. 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,

Mehr

Überblick. Peer Kröger (LMU München) Einführung in die Programmierung WS 16/ / 854

Ü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

Mehr

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Ausnahmen

Prof. 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

Mehr

4.5 Exceptions. TU Darmstadt Allgemeine Informatik II, SS 05

4.5 Exceptions. TU Darmstadt Allgemeine Informatik II, SS 05 4.5 Exceptions In der Abarbeitung eines Methodenaufrufs kann die Methode immer potentiell auf Probleme stoßen, mit denen sie selbst nicht umzugehen weiß. Exceptions geben einer Methode die Möglichkeit,

Mehr

1.7 Fehler- und Ausnahmebehandlung

1.7 Fehler- und Ausnahmebehandlung 1.7 Fehler- und Ausnahmebehandlung Ein Beispiel: class PhoneBook { int capacity; String names[]; int numbers[]; int count; PhoneBook(int cap) { capacity = cap; names = new String[cap+1]; numbers = new

Mehr

C# - Einführung in die Programmiersprache Methoden. Leibniz Universität IT Services

C# - Einführung in die Programmiersprache Methoden. Leibniz Universität IT Services C# - Einführung in die Programmiersprache Methoden Leibniz Universität IT Services 02.07.12 Methoden... sind Subroutinen in einer Klasse. können einen Wert an den Aufrufer zurückgeben. verändern die Eigenschaften

Mehr

Einstieg in die Informatik mit Java

Einstieg 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

Mehr

Rückgabewerte von Methoden

Rückgabewerte von Methoden OOP Rückgabewerte von Methoden Henrik Horstmann 14. September 2014 Inhaltsverzeichnis Inhaltsverzeichnis 1 Bedeutung der Symbole...1 2 Rückgabewerte von Methoden...2 3 Der freundliche Computer...2 3.1

Mehr

Auf dieser und den beiden folgenden Folien wurde jeweils ein neues Objekt der Klasse FigurMalerei erstellt und die angegebene Methode ausgeführt.

Auf dieser und den beiden folgenden Folien wurde jeweils ein neues Objekt der Klasse FigurMalerei erstellt und die angegebene Methode ausgeführt. 432 433 434 435 Auf dieser und den beiden folgenden Folien wurde jeweils ein neues Objekt der Klasse FigurMalerei erstellt und die angegebene Methode ausgeführt. 436 437 438 439 440 441 442 443 Die verkürzte

Mehr

Einführung in die Programmierung für NF. Fehler und Ausnahmen

Einfü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

Mehr

Liste Programmieren Java Überblick

Liste 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

Mehr

Vorlesung 10. Sitzung Grundlegende Programmiertechniken

Vorlesung 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

Mehr

Wo sind wir? Rudolf Berrendorf FH Bonn-Rhein-Sieg Programmiersprache Java 280

Wo 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,

Mehr

Soll 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. 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

Mehr

Schachtelung der 2. Variante (Bedingungs-Kaskade): if (B1) A1 else if (B2) A2 else if (B3) A3 else if (B4) A4 else A

Schachtelung der 2. Variante (Bedingungs-Kaskade): if (B1) A1 else if (B2) A2 else if (B3) A3 else if (B4) A4 else A 2.4.6. Kontrollstrukturen if-anweisung: Bedingte Ausführung (Verzweigung) 2 Varianten: if (Bedingung) Anweisung (Anweisung = einzelne Anweisung oder Block) Bedeutung: die Anweisung wird nur ausgeführt,

Mehr

Verteilte Systeme - Java Networking (Sockets) 2 -

Verteilte Systeme - Java Networking (Sockets) 2 - Verteilte Systeme - Java Networking (Sockets) 2 - Prof. Dr. Michael Cebulla 06. November 2014 Fachhochschule Schmalkalden Wintersemester 2014/15 1 / 30 Michael Cebulla Verteilte Systeme Gliederung Wiederholung:

Mehr

Programmierung für Mathematik HS11

Programmierung 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

Mehr

Objektorientierte Programmierung. Kapitel 9: Exceptions I

Objektorientierte 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/

Mehr

Exceptions und Vererbung

Exceptions und Vererbung Exceptions und Vererbung Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Vererbung Polymorphie Methoden- & Eigenschaftsüberschreibung Weitere Schlüsselwörter 2. Exceptions Eigene Exceptions Handling

Mehr

Einleitung errno.h Exceptions GError Zusammenfassung. Error-handling in C. Proseminar C-Programmierung Lucas Georg 1/22

Einleitung errno.h Exceptions GError Zusammenfassung. Error-handling in C. Proseminar C-Programmierung Lucas Georg 1/22 Error-handling in C Proseminar C-Programmierung 24.6.2011 Lucas Georg 1/22 errno Exceptions GError Zusammenfassung Lucas Georg 2/22 Wofür brauchen wir Error-handling? int main() int x; scanf("%d", &x);

Mehr

Programmiertechnik Ausnahmen

Programmiertechnik 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:

Mehr

Leider gibt es in einigen Fällen keine wirklich einheitlichen Fachbegriffe im Deutschen, obwohl einige als "der Standard" bezeichnet werden.

Leider gibt es in einigen Fällen keine wirklich einheitlichen Fachbegriffe im Deutschen, obwohl einige als der Standard bezeichnet werden. 37 Leider gibt es in einigen Fällen keine wirklich einheitlichen Fachbegriffe im Deutschen, obwohl einige als "der Standard" bezeichnet werden. der Begriff der Klasse ist immer eindeutig. Die verschiedenen

Mehr

Ausnahmebehandlung. (exceptionhandling) in C++

Ausnahmebehandlung. (exceptionhandling) in C++ Ausnahmebehandlung (exceptionhandling) in C++ Diese Folien basieren auf Kapitel 19 in Herbert Schildt, C++ ENT-PACKT, mitp. Weiterführende Informationen zu diesem Themengebiet sind insbesondere dort zu

Mehr

Einführung in die Programmierung für NF MI. Übung 12

Einführung in die Programmierung für NF MI. Übung 12 Einführung in die Programmierung für NF MI Übung 12 Inhalt Exceptions Die Spezialklasse Enum Wiederholung zur Klausur Interfaces UML Oberserver Pattern Einführung in die Programmierung für NF MI Übung

Mehr

Methoden und Funktionen

Methoden und Funktionen Programmieren mit Java Modul 4 Methoden und Funktionen Theorieteil Inhaltsverzeichnis 1 Modulübersicht 3 2 Methoden 3 2.1 Methoden ohne Rückgabewert (Prozeduren)................ 3 2.2 Methoden mit Rückgabewert

Mehr

16. Ausnahmebehandlung Programmieren / Algorithmen und Datenstrukturen 2

16. Ausnahmebehandlung Programmieren / Algorithmen und Datenstrukturen 2 16. Ausnahmebehandlung Programmieren / Algorithmen und Datenstrukturen 2 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt Wintersemester 2012 / 2013 1 Agenda Kontrollfragen Motivation Fehlerbehandlung

Mehr

15. Ausnahmebehandlung Programmieren / Algorithmen und Datenstrukturen 2

15. Ausnahmebehandlung Programmieren / Algorithmen und Datenstrukturen 2 15. Ausnahmebehandlung Programmieren / Algorithmen und Datenstrukturen 2 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt Wintersemester 2012 / 2013 1 Agenda Motivation Fehlerbehandlung Übung

Mehr

Ausnahmen. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Ausnahmen. 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

Mehr

Java - Fehler im Code. Leibniz Universität IT Services Anja Aue

Java - Fehler im Code. Leibniz Universität IT Services Anja Aue Java - Fehler im Code Leibniz Universität IT Services Anja Aue Softwarefehler Programmierfehler entstehen beim Schreiben des Programmcodes. Logische Fehler können durch Denkfehler bei der Umsetzung der

Mehr

Themen der Übung. Methoden und Wrapperklassen. Vorteile von Methoden. Methoden. Grundlagen

Themen der Übung. Methoden und Wrapperklassen. Vorteile von Methoden. Methoden. Grundlagen Themen der Übung 1 Organisatorisches Methoden und Wrapperklassen 2 Methoden 3 Wrapper-Klassen CoMa-Übung IV TU Berlin 07.11.2012 Organisatorisches: Im Pool nur auf die Abgabeliste setzen, wenn ihr wirklich

Mehr

Name Klasse Datum. Datentyp: Definition: Anführungszeichen

Name Klasse Datum. Datentyp: Definition: Anführungszeichen Name Klasse Datum 1 Allgemeines Die wachsende Notwendigkeit Daten schnell und strukturiert zwischen einzelnen Systemen zu verteilen, hat dem XML Format einen wichtigen Platz in der IT Systemlandschaft

Mehr

9. Ausnahmebehandlung

9. 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,

Mehr

Ausnahmen. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Ausnahmen. 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:

Mehr

Exception. 6. Exceptions. Die Klasse java.lang.exception. Fehlermeldung. Klassenname. Ort des Auftretens

Exception. 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

Mehr

ÜBUNGS-BLOCK 7 LÖSUNGEN

ÜBUNGS-BLOCK 7 LÖSUNGEN ÜBUNGS-BLOCK 7 LÖSUNGEN Aufgabe 1: Gegeben ist folgender Code: Auto[] array = new Auto[3]; // Alle Autos im Array tunen: for (int i = 1; i

Mehr

Vorlesung Informatik II

Vorlesung 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

Mehr

Exceptions. Prof. Dr. Margarita Esponda SS 2012. M. Esponda-Argüero

Exceptions. 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

Beispiel: Methode mit einem Fehler. Diese Methode wird problematisch, wenn von außen eine Dauer von 0 Sekunden angegeben wird, etwa im Aufruf

Beispiel: Methode mit einem Fehler. Diese Methode wird problematisch, wenn von außen eine Dauer von 0 Sekunden angegeben wird, etwa im Aufruf 16 Exceptions Zur Behandlung unerwarteter Situationen bietet Java Unterstützung in Form von Exceptions oder Ausnahmen. Den Sinn von Exceptions können wir Ihnen an einem kleinen Beispiel klarmachen. Nehmen

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

Name Klasse Datum. Um nun mit Variablen arbeiten zu können, müssen nun einige Voraussetzungen erfüllt sein:

Name Klasse Datum. Um nun mit Variablen arbeiten zu können, müssen nun einige Voraussetzungen erfüllt sein: Name Klasse Datum 1 Allgemein Wie der Name Datenverarbeitung schon verrät, dienen Rechner dazu Daten zu speichern, zu ändern und wieder auszugeben. Programme bilden den Algorithmus ab, wie die Daten zu

Mehr

Methoden und Wrapperklassen

Methoden und Wrapperklassen Methoden und Wrapperklassen CoMa-Übung IV TU Berlin 06.11.2012 CoMa-Übung IV (TU Berlin) Methoden und Wrapperklassen 06.11.2012 1 / 24 Themen der Übung 1 Methoden 2 Wrapper-Klassen CoMa-Übung IV (TU Berlin)

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Welche Arten von Anweisungen gibt es? Anweisungen

Mehr

3. Exceptions. Hintergrund: Programmieren auf der Basis von Verträgen. Kundenklasse. Lieferantenklasse

3. Exceptions. Hintergrund: Programmieren auf der Basis von Verträgen. Kundenklasse. Lieferantenklasse 3. Exceptions Prinzipien von Exceptions 3. Exceptions Hintergrund: Programmieren auf der Basis von Verträgen Kundenklasse Lieferantenklasse Methodenaufruf Verpflichtung zur Einhaltung der Vorbedingung

Mehr

Probeklausur Informatik 2 Sommersemester 2013

Probeklausur Informatik 2 Sommersemester 2013 Probeklausur Informatik 2 Sommersemester 2013 1 Probeklausur Informatik 2 Sommersemester 2013 Name: Matrikelnummer: Hilfsmittel: Es sind alle schriftlichen Unterlagen, aber keine elektronischen Hilfsmittel

Mehr

15 Fehler-Objekte: Werfen, Fangen, Behandeln

15 Fehler-Objekte: Werfen, Fangen, Behandeln 15 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

Mehr

Exceptions. Softwareentwicklung II (IB) Prof. Dr. Oliver Braun Letzte Änderung: :23. Exceptions 1/37

Exceptions. 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

Mehr

Softwareentwicklung II (IB) Exceptions. Prof. Dr. Oliver Braun. Fakultät für Informatik und Mathematik Hochschule München

Softwareentwicklung 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.........................................

Mehr

Einführung in die Programmierung für NF. Übung

Einführung in die Programmierung für NF. Übung Einführung in die Programmierung für NF Übung 11 15.01.2014 Inhalt Korrektur Blatt 10 JList mit ListModel bzw. DefaultListModel ActionListener und InputDialoge UML Praktische Anwendung Observer-Pattern

Mehr

pue09 December 16, 2016

pue09 December 16, 2016 pue09 December 16, 2016 1 Aufgabe 1: Zeichenprogramm revisited Betrachten Sie die folgende Implementierung des Zeichenprogramms aus PÜ8 (Anmerkung: Kommentare und Docstrings wurden hier bewusst weggelassen,

Mehr

Einführung in die Programmierung

Einfü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)

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

Ausnahmebehandlung PK11W-16,

Ausnahmebehandlung PK11W-16, Ausnahmebehandlung PK11W-16, 05. 12. 2011 1 Laufzeitfehler weitere Ausführung unmöglich Ausnahme geworfen Beispiele: ArrayIndexOutOfBoundsException NullPointerException ArithmeticException AssertionError

Mehr

Ausnahmen. Philipp Wendler. Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung

Ausnahmen. 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

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. ! 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

Mehr

Ausnahmen. Dr. Philipp Wendler. Zentralübung zur Vorlesung Einführung in die Informatik: Programmierung und Softwareentwicklung

Ausnahmen. 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

Mehr

Ausnahmen. Dr. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung

Ausnahmen. 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

Mehr

Gliederung Grundlagen Schlüsselworte try-catch Fehlerobjekte Fehlerklassen Schlüsselwort finally Schlüsselwort throws selbst erstellte Exceptions

Gliederung 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

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

== ImplementierungvonbeliebigenFunktionen ËØÖ Ò

== ImplementierungvonbeliebigenFunktionen ËØÖ Ò MöglicheImplementierungvon ÒØ ÖÒ µ ÔÙ Ð Ð ËØÖ Ò ß ÔÖ Ú Ø Ø Ø ÒØ Ò ½¼¾ ÔÖ Ú Ø Ø Ø Ä Ø ËØÖ Ò Ë Ø Ò Û Ä Ø ËØÖ Ò Ò ÔÙ Ð ËØÖ Ò ÒØ ÖÒ µ ß ÒØ Å Ø º Ó µµ±ò ÓÖ Ä Ø ËØÖ Ò Ø Ë Ø Ø ÒÙÐÐ Ø ØºÒ Üص Õ٠Рغ Ò Óµµ Ö ØÙÖÒ

Mehr

Durch die Möglichkeit, Ein- und Ausgaben auf der Konsole durchzuführen, kann man auch systematisch das Verhalten von Klassen analysieren.

Durch die Möglichkeit, Ein- und Ausgaben auf der Konsole durchzuführen, kann man auch systematisch das Verhalten von Klassen analysieren. Durch die Möglichkeit, Ein- und Ausgaben auf der Konsole durchzuführen, kann man auch systematisch das Verhalten von Klassen analysieren. 267 Das hier skizzierte Problem basiert auf der strategischen Entscheidung

Mehr

Grundlagen der Objektorientierten Programmierung - Methoden -

Grundlagen der Objektorientierten Programmierung - Methoden - Methoden In ihrem formalen Aufbau entsprechen Java-Methoden den Funktionen in C und C++. Eine Methode dient dazu, eine häufig benötigte Folge von Anweisungen unter einem Namen zusammenzufassen und zum

Mehr