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

Ähnliche Dokumente
Selectionsort Beispiel

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

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

II.4.4 Exceptions - 1 -

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

Praxis der Programmierung

Ausnahmen (Exceptions)

! 1. Unterklassen und Vererbung! 2. Abstrakte Klassen und Interfaces! 3. Modularität und Pakete! 4. Ausnahmen (Exceptions) II.4.

1 Fehler-Objekte: Werfen, Fangen, Behandeln

Kapitel 11: Ausnahmebehandlung

Vorlesung Informatik II

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

Mögliche Implementierung von intern():

Vorlesung 10. Sitzung Grundlegende Programmiertechniken

Abschnitt 7: Weitere Konzepte der oo Programmierung in Java

Einstieg in die Informatik mit Java

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

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

15 Fehlerobjekte: Werfen, Fangen, Behandeln

II.4.4 Exceptions - 1 -

15 Fehlerobjekte: Werfen, Fangen, Behandeln

Zuverlässigkeit von Programmen: Behandlung von Ausnahmesituationen

Johannes Unterstein - TINF16 - Java - Sommersemester 2017 JAVA. Weiterführende Spracheigenschaften

Einführung in die Programmierung mit Java

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

Ausnahmen. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java 27.6.

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

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

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

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

Kapitel 12: Ausnahmen und Ausnahmebehandlung

15 Fehlerobjekte: Werfen, Fangen, Behandeln

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

15 Fehlerobjekte: Werfen, Fangen, Behandeln

Robuste Programme durch Ausnahmebehandlung

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

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

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

Umgang mit Fehlern. Sinn von Ausnahme-/Fehlerobjekten Dokumentation Umgang mit Fehlern Eigene Fehlerklassen

Liste Programmieren Java Überblick

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

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

Komponenten-basierte Entwicklung Teil 4: Exceptions

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 12/13. Kapitel 11. Fehler und Ausnahmen

9. Fehler und Ausnahmen Grundlagen der Programmierung 1 (Java)

Einführung in die Programmierung

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 13/14. Kapitel 11. Fehler und Ausnahmen

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

9. Ausnahmebehandlung

9. Ausnahmebehandlung

Java Einführung Exception Handling. Kapitel 17

1.7 Fehler- und Ausnahmebehandlung

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 14/15. Kapitel 11. Fehler und Ausnahmen 1

Einführung in die Programmierung für NF

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

Kapitel 10. Programmierkurs. Grundlagen von Exceptions Behandlung von Exceptions

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

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

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

Soll die Programm-Ausführung nicht beendet werden, muss der Fehler abgefangen werden. NumberFormatException

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

Ausnahmebehandlung PK11W-16,

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

Prinzip des Exception Handling

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

Exceptions - Klausuraufgaben

Einführung in die Programmierung Blockkurs Java

Programmiertechnik Ausnahmen

9. Ausnahmebehandlung

Ausnahmen. Gilbert Beyer und Annabelle Klarl. Einführung in die Informatik. Zentralübung zur Vorlesung Einführung in die Informatik

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

Ausnahmenbehandlung in Java. Dr. Horst Treiblmaier Abteilung für Wirtschaftsinformatik WU Wien

Java : Fehlerbehandlung.

Grundlagen der Programmierung. Kapitel 9: Ausnahmen. Überblick. Fehlerbehandlung in Software-Systemen. Ziel der Vorlesung

Grundlagen der Programmierung! Kapitel 9: Ausnahmen! Überblick! Fehlerbehandlung in Software-Systemen! Ziel der Vorlesung!

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

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

15 Fehler-Objekte: Werfen, Fangen, Behandeln

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

Teil II. Objektorientierte Programmierung und objektorientierter Entwurf

Kapitel 9: Klassen und höhere Datentypen. Selektoren

Kapitel 10. Programmierkurs. Grundlagen von Exceptions Behandlung von Exceptions

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

Einführung in die Informatik

Objektorientierte Programmierung

== ImplementierungvonbeliebigenFunktionen ËØÖ Ò

Javakurs zu Informatik I. Henning Heitkötter

4.5 Exceptions. TU Darmstadt Allgemeine Informatik II, SS 05

Java Fehlerbehandlung

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 12. Fehler und Ausnahmen

Transkript:

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 sind. Mathematisch bilden die Objekte die Elemente einer Menge M, die bezüglich einer Relation (Beziehung) R die folgenden Eigenschaften hat: Für jeweils beliebige Elemente a,b,c der Menge M und der Relation R gilt: Irreflexibilität: a steht nicht mit a in Relation Transitivität: Wenn arb und brc, dann gilt arc. Nachfolgend wird die Menge der ganzen Zahlen und die darauf definierte Relation betrachtet. 36

Selectionsort Beispiel 37

Selectionsort Beispiel 1 7 9 3 4 6 38

Selectionsort Beispiel 1 7 9 3 4 6 1 3 9 7 4 6 39

Selectionsort Beispiel 1 7 9 3 4 6 1 3 9 7 4 6 1 3 4 7 9 6 40

Selectionsort Beispiel 1 7 9 3 4 6 1 3 9 7 4 6 1 3 4 7 9 6 1 3 4 6 9 7 41

Selectionsort Beispiel 1 7 9 3 4 6 1 3 9 7 4 6 1 3 4 7 9 6 1 3 4 6 9 7 1 3 4 6 7 9 42

Bubblesort Beispiel 6 1 3 9 7 4 43

Bubblesort Beispiel 6 9 1 6 3 1 9 3 7 7 4 4 44

Bubblesort Beispiel 6 9 9 1 6 7 3 1 6 9 3 1 7 7 3 4 4 4 45

Bubblesort Beispiel 6 9 9 9 1 6 7 7 3 1 6 6 9 3 1 4 7 7 3 1 4 4 4 3 46

Bubblesort Beispiel 6 9 9 9 9 1 6 7 7 7 3 1 6 6 6 9 3 1 4 4 7 7 3 1 3 4 4 4 3 1 47

Exceptions: Das Konzept Exceptions Beispiel: sind gewisse Ausnahme-, d.h. Fehlersituationen, die zur Laufzeit ausgelöst werden können. (Throwing) String str = null; System.out.println(str.length()); führt zum Abbruch des Programms mit der Fehlermeldung NullPointerException In Java kann eine Reaktion auf das Auftreten von Exceptions programmiert werden, so dass das Programm weiterlaufen kann. (Abfangen / Catching von Exceptions) 48

Exceptions vs. Errors Exceptions eher leichte Laufzeitfehler können abgefangen werden Beispiele: ArithmeticException ArrayIndexOutOfBoundsException StringIndexOutOfBoundsException NumberFormatException EOFException Errors eher schwere Laufzeitfehler führen zum Programmabbruch NoClassDefFoundError OutOfMemoryError Internal Error 49

Exceptions sind Objekte Exception-Typ Klasse (Bsp.: java.lang.nullpointerexception). Tritt ein Laufzeitfehler ein, wird ein Exemplar der jeweiligen Exception-Klasse erzeugt (Throwing). Alle Exception-Klassen sind Unterklassen von java.lang.exception. hierarchischer Aufbau der Exceptions Verteilung auf verschiedene Pakete Sie besitzen daher alle gewisse gemeinsame Methoden, u.a.: getmessage(), die bestimmte Informationen über den Fehlerfall liefert Beispiel: java.lang.arrayindexoutofboundsexception: -1 printstacktrace(), die die Fehlermeldung und die dynamische Aufrufhierarchie auf stdout ausgibt 50

Explizites Abfangen von Exceptions try { // Anweisungen, in denen eine XY Exception // ausgelöst werden kann } catch (XYException e) { // Anweisungen, die beim Auftreten einer // XYException ausgeführt werden, z.b. System.out.println(e.getMessage()); } mehrere Fehlerarten mehrere catch-blöcke 51

Weitergeben von Exceptions Alternativ werden Exceptions zur Behandlung weitergegeben, und zwar erst an übergeordnete Programmblöcke derselben Methode, dann (entlang der dynamischen Aufrufhierarchie) an die Aufrufer der Methode, in der die Exception ausgelöst wurde. Wird sie nirgends explizit abgefangen, so bricht das Programm ab. die throws-klausel signalisiert, welche Exceptions die jeweilige Methode nicht selbst behandelt: public void methode() throws IOException {... } Auf alle Exceptions außer RuntimeExceptions muss der Programmierer reagieren!!! 52

Benutzerdefinierte Exceptions für Fehlersituationen im Zusammenhang mit benutzerdefinierten Klassen Auslösen mit throw Exemplar einer Exception-Klasse, z.b.: if ( //Fehlersituation ) throw new RuntimeException("Denominator is zero."); Jede Exception-Klasse besitzt Konstruktoren XYException() und XYException(String message) benutzerdefinierte Exceptions als Unterklasse von einer Exception-Klasse: MyException(){super()} und MyException(String msg){super(msg)} 53