Programmieren in Java
|
|
- Heiko Jaeger
- vor 5 Jahren
- Abrufe
Transkript
1 Exceptions Datei-Handling
2 2 Interfaces (Wiederholung) Ein Interface (Schnittstelle) ist eine abstrakte Klasse, in der alle Methoden public sind (per default, eine Sichtbarkeit muss nicht angegeben werden) abstrakt sind (per default, abstract muss nicht angegeben werden) SICHTBARKEIT interface BEZEICHNER { RÜCKGABETYP BEZEICHNER ( DATENTYP PARAM- BEZEICHNER, ); Eine Klasse implementiert ein Interface und gibt die Beziehung mit implements an public class BEZEICHNER implements INTERFACE-BEZEICHNER { Eine implementierende Klasse muss entweder alle Methoden des Interfaces definieren oder als abstract deklariert werden
3 Objektorientierte Programmierung 3 Vergleich von Schnittstelle und abstrakter Klasse (Wiederholung) Schnittstelle hat als Elemente: Konstanten Methodensignaturen Abstrakte Klasse hat als Elemente: Konstanten Variablen Methodensignaturen ohne Methodenrumpf => abstract Mit Methodenrumpf => nicht abstract Klasse kann maximal eine abstrakte Basisklasse haben Klasse kann mehrere Schnittstellen implementieren
4 Objektorientierte Programmierung 4 Fehler = Exceptions? Die Exception- bzw. Ausnahmebehandlung in Java ist eine spezielle Form der Fehlerbehandlung Typischerweise treten beim Programmieren folgende Fehler auf: Syntaktische Fehler: vom Compiler erkannt Übersetzung des Programms erst nach Behebung des Fehler möglich Logische Fehler und Bugs: schwer zu lokalisieren (z.b. + und - vertauscht). Behebung z. B. durch systematisches Ausgeben von Debug-Informationen Laufzeitfehler: Fehlerquelle kann außerhalb des Programms liegen: Benutzerangaben oder Ressourcenanforderungen (z.b. Dateien) Diese Fehler müssen im Programm abgefangen bzw. behandelt werden.
5 Objektorientierte Programmierung 5 Fehler an Ort und Stelle vermeiden Grundsätzlich sollten Fehler an dem Ort Ihres Auftretens vermieden oder behandelt werden Beispiel: Bevor man auf die Argumente eines Programmaufrufs zugreift, sollte man sich vergewissern, das diese auch vorhanden sind public static void main(string[] args) { if (args.length!= 1) { System.out.println("Falsche Anzahl an Argumenten"); System.exit(0); System.out.println(args[0]);
6 Fehlerbehandlung durch Codierung in Rückgabewerten Mit den bisherigen Mitteln kann das Fehlschlagen einer Ausführung durch Codierung in der Rückgabe umgesetzt werden Das ist auch durchaus ein nutzbarer Ansatz, allerdings Was wenn die Methode eine Rückgabe liefern soll, die für die Fehlercodierung ungeeignet ist z. B. ein Objekt? Ein Nutzer der Methode kann die Rückgabe ignorieren, so dass unter Umständen eine nötige Fehlerbehandlung überhaupt nicht durchgeführt wird public float teilen(float zaehler, float nenner) { if (nenner == 0.0f) { return Float.NaN; return zaehler / nenner; Objektorientierte Programmierung 6 float quotient = teilen(zaehler, nenner); if (Float.isNaN(quotient)) { System.out.println("Fehler: Division durch Null"); else { System.out.println("Divisionsergebnis: " + quotient);
7 Objektorientierte Programmierung 7 Exceptions Java bietet Exceptions mit eine Alternative zur Fehlerbehandlung Eine Exception ist ein Objekt der Klasse Exception oder einer abgeleiteten Klasse von Exception Exceptions dienen dazu das Auftreten und Erkennen eines Fehlers räumlich im Code zu trennen Code für eine bessere Übersicht nicht durch aufwendige Fehlerbehandlung unterbrochen sinnvolle Fehlerbehandlung am Ort des Auftretens nicht möglich
8 8 Fehlerbehandlung durch Exceptions Die Ausführung einer Methode kann jederzeit durch das Werfen einer Exception-Instanz beendet werden Methoden, die durch eine Exception abgebrochen werden könnten, müssen diese in ihrer Signatur nach dem Schlüsselwort throws angeben MODIFIKATOREN RÜCKGABETYP BEZEICHNER ( throws EXCEPTION-TYP, ; public float teilen(float zaehler, float nenner) throws Exception{ Innerhalb der Methode wird eine Exception-Instanz mittels throw geworfen: if (nenner == 0.0f) { throw new Exception("Division durch Null"); Die Ausführung der Methode wird mit throw abgebrochen, d.h. nachfolgender Code wird nicht mehr ausgeführt Der Methodenaufruf wird keine Rückgabe liefern
9 9 Fehlerbehandlung durch Exceptions Man betrachte folgende Methodensignatur und Methodenaufruf public Object createsomething() throws Exception{ Object something = createsomething(); System.out.print(something); Der Aufruf createsomething() könnte nach Signatur zu einer Exception führen Kommt es zum Fehlerfall, liefert der Aufruf kein Ergebnis Die Variable something bleibt also uninitialisiert Variablen müssen in Java vor ihrer ersten Auswertung initialisiert sein, ansonsten kommt es zum Compilefehler Damit ist System.out.println() unter Umständen nicht compilierbar Um diesen Konflikt zu vermeiden, bietet Java die Möglichkeit Codeblöcke versuchsweise auszuführen Das dafür vorgesehene Sprachkonstrukt nennt sich try-catch-block
10 10 Fehlerbehandlung durch Exceptions In einem try-catch Block können mehrere Anweisungen ausgeführt werden Führt eine Anweisung zum Fehler wird keine der nachfolgenden ausgeführt Jede dieser Anweisungen kann das Schmeißen diverser Exceptions signalisieren Für jeden Exception-Typ kann ein catch-block angegeben werden Es müssen alle potentiellen Exceptions durch catch abgefangen werden Ein catch-block kann mehrere Exception-Typen abdecken: Entweder durch die Angabe eines übergeordneten Exception-Typs try { catch (Exception e) { Oder durch Angabe mehrerer Typen: try { catch (ExceptionTyp_1 ExceptionTyp_2 e) { Jede Exception darf allerdings nur einmal durch einen catch-block behandelt werden
11 11 Fehlerbehandlung durch Exceptions Angenommen ein Aufruf innerhalb des try-blockes führt zu einem illegalen Programmzustand Der catch-block sollte dann dazu genutzt werden, diesen illegalen Zustand wieder aufzulösen Ist dies in der aufrufenden Methode nicht möglich, so kann die Exception an die nächste Methode weitergereicht werden: Dazu muss auch die aufrufende Methode die möglichen Exceptions per throws deklarieren Falls die Methode alle Exceptions definiert, die im try-teil potentiell auftreten könnten, so kann try-catch in der Methode weggelassen werden public float teilen(float zaehler, float nenner) throws DivideException { if (nenner == 0.0f) { throw new DivideException( Division durch Null" ); return zaehler / nenner; Alternative kann die Methode eine eigene Exception anderen Typs schmeißen, dann ist allerdings ein try-catch für den teilen-aufruf nötig
12 12 Fehlerbehandlung durch Exceptions Neben dem catch-block kann optional noch ein finally-block angegeben werden Der Code innerhalb des finally-blockes wird in jedem Fall ausgeführt: Entweder nach erfolgreicher Ausführung aller im try-block befindlichen Anweisungen Oder nachdem ein Fehler durch einen catch-block behandelt wurde
13 try-catch-finally Neben dem catch-block kann optional noch ein finally-block angegeben werden try { AUFRUF EINER METHODE, DIE MIT THROWS DEFINIERT WURDE catch ( EXCEPTION-TYP BEZEICHNER_1 ) { FEHLERBEHANDLUNG catch ( EXCEPTION-TYP BEZEICHNER_N ) { finally { try { teilen(); // wird nicht mehr ausgeführt // falls in der Methode teilen // eine Exception geworfen // wurde catch (Exception e) { System.out.println( e.getmessage() ); finally { System.out.println( "Dies wird immer ausgeführt" ); 13 optional Der Code innerhalb des finally-blockes wird in jedem Fall ausgeführt: Entweder nach erfolgreicher Ausführung aller im try-block befindlichen Anweisungen Oder nachdem ein Fehler durch einen catch-block behandelt wurde
14 14 Eigene Exceptions Da Exception eine Java-Klasse ist, kann von ihr geerbt werden Durch Vererbung von Exception können eigene Exceptions definiert werden public class MyException extends Exception { public MyException(String message) { super(message); public float teilen(float zaehler, float nenner) throws MyException { if (nenner == 0.0f) { throw new MyException ( Division durch Null" ); return zaehler / nenner; try { teilen(5, 0); catch (MyException ex) { System.out.println(ex.getMessage() );
15 15 Laufzeit-Exceptions Exceptions können unterteilt werden in: 1. Checked Exceptions: Compiler prüft, ob Exceptions behandelt werden oder in der Signatur der Methode throws <Exceptionliste> enthalten sind und somit weitergeleitet werden () 2. Unchecked Exceptions werden als Laufzeit-Exceptions bezeichnet erben von der Klasse RuntimeException Bei RuntimeException und deren Subklassen nimmt der Compiler keine Überprüfung vor Wird eine RuntimeException nicht abgefangen, so kommt es unmittelbar zum Programmabbruch! Beispiele: NullPointerException oder ArrayOutOfBounds- Exception
16 16 Einlesen von Dateien Stream: Fluss von Bytes zwischen einem Sender und einem Empfänger Ein Stream, der von einer Datenquelle kommt, ist ein InputStream Ein Stream, der an eine Datenquelle geschickt wird, ist ein OutputStream. In Java erfolgt das Einlesen von Dateiinhalten über Datei-Streams Der Zugriff auf eine Datei erfolgt über ihren Dateipfad Ein Pfadobjekt wird über die Hilfsklasse java.nio.file.paths erzeugt: Path path = Paths.get("files/test.txt"); Dabei spielt keine Rolle, ob zu dem Pfad überhaupt eine Datei existiert Dies wird erst beim Zugriff (Lesen/Schreiben) validiert Java überprüft selbständig welches Trennzeichen für Ordner auf dem aktuellen Betriebssystem zugelassen ist Ob also \ (Windows) oder / (Linux) ist in der Angabe egal Ohne führendes Trennzeichen wird dem angegebenen Pfad der Pfad der Anwendung vorangestellt In Netbeans ist dies der Ordner, der den src-ordner enthält
17 17 Einlesen von Dateien Über die Hilfsklasse java.nio.file.files wird ein InputStream erzeugt Path path = Paths.get("files/test.txt"); InputStream stream = Files.newInputStream(path); Natürlich muss dafür die angegebene Datei existieren Ob eine Datei existiert, wird ebenfalls über Files angefragt if (Files.exists(path)) { else { Nun könnte mit stream.read() Byte für Byte der Dateiinhalt gelesen werden Lese- und Schreibeoperationen werden standardmäßig ohne Puffer ausgeführt D.h. jede Lese- bzw. Schreibeoperation wird an das Betriebssystem delegiert Das kann ein Programm allerdings sehr ineffektiv machen Daher werden InputStreams meist um einen Puffer erweitert Der Stream ließt dann solange von diesem Puffer bis dieser leer ist Erst dann erfolgt ein Betriebssystemaufruf
18 18 Einlesen von Dateien Ein InputStream wird durch eine sogenannte Wrapper -Klasse durch einen Puffer erweitert Path path = Paths.get("files/test.txt"); InputStream stream = Files.newInputStream(path); BufferedInputStream buffer = new BufferedInputStream(path); Da BufferedInputStream selbst wieder ein InputStream ist, kann überall da wo ein InputStream benötigt wird, ein gepufferter eingesetzt werden Es sei nun davon ausgegangen, dass der Inhalt einer Datei ein Text ist Liest man Byte für Byte müsste man diese Bytes zu Text umwandeln Diesen Aufwand kann man sich allerdings sparen, da die Java-API bereits Klassen anbietet, welche diese Aufgabe übernehmen: InputStream stream = Files.newInputStream(path); InputStreamReader reader = new InputStreamReader(stream); BufferedReader buffer = new BufferedReader(reader); Kürzer: BufferedReader buffer = Files.newBufferedReader(path);
19 19 Einlesen von Dateien Mit der Methode readline des BufferedReader kann eine Datei nun Zeile für Zeile eingelesen werden String line; StringBuilder out = new StringBuilder(); while ((line = reader.readln())!= null) out.append(line).append("\n"); Nach dem Einlesen einer Datei muss der InputStream geschlossen werden stream.close(); Die meisten Datei-Operationen können zu einer IOException führen Erzeugung, Einlesen und Schließen des Streams sollten getrennt werden, um in jedem Fall die Chance zu haben den Stream zu schließen try { // STREAM ERZEUGEN try { // STREAM EINLESEN finally { try { // STREAM SCHLIEßEN catch (IOException io) { catch (IOException io) {
20 20 Einlesen von Dateien Mit Java 7 wurde die try-catch-anweisung um das automatische Schließen von Ressourcen erweitert Als Ressource werden alle Objekte angesehen, die das Interface java.io.closeable implementieren try ( Closeable BEZEICHNER = ) { Ein InputStream ist Closable: Path path = Paths.get("files/test.txt"); StringBuilder out = new StringBuilder(); try (InputStream stream = Files.newInputStream(path)) { BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); String line; while ((line = reader.readln())!= null) out.append(line).append("\n"); catch (IOException io) {
21 21 Schreiben in Dateien Das Schreiben in eine Datei verläuft im Prinzip analog Anstelle eines InputStreams wird nun ein OutputStream verwendet Wie beim InputStream sollte ein Puffer eingesetzt werden Das Beispiel baut darauf das Text in eine Datei geschrieben werden soll String content = ; Path path = ; try (OutputStream stream = Files.newOutputStream(path)) { BufferedWriter writer = new BufferedWriter (new OutputStreamWriter(stream)); writer.write(content); writer.flush(); catch (IOException io) { Die Schreiboperation wird auf dem Puffer ausgeführt Die wirkliche Datei ist damit noch nicht mit dem Inhalt gefüllt Mit flush wird der Pufferinhalt in die Datei übertragen (Betriebssystem) Obiges kann man über die Hilfsklasse Files in einem Aufruf erledigen: try { Files.write(path, content.getbytes()); catch (IOException io) {
22 Objektorientierte Programmierung 22 CSV-Dateiformat CSV ist die Abkürzung für Comma-separated-values/Character-separated-values Datei dient zur Speicherung und dem Austausch einfach strukturierter Daten Ein Datensatz wird in einer Dateizeile gespeichert Ein Datensatz kann aus mehreren Daten bestehen, die durch ein Trennzeichen z. B. Komma oder Semikolon voneinander getrennt werden Beispiel: Max;Mustermann;Musterstadt; Optionaler Header in der ersten Zeile benennt die Dateispalten Dateien sind erkennbar an der Erweiterung *.csv Import für Excel oder Openoffice mit Semikolon als Trennzeichen Quelle:
23 Objektorientierte Programmierung 23 Aufgaben 1. Tests zum Exceptionhandling: a) In der Klasse Main des Beispielprojekts aus dieser Vorlesung soll die Kiste nun mit nur 4 Plätzen instanziiert werden. Was beobachten Sie bei einem Run des Projekts? b) Entfernen Sie in der Klasse Kiste in der Methode hinzufuegen(iform form) den if-satz und lassen Sie das Projekt erneut laufen. Was beobachten Sie nun? c) Umschließen Sie die hinzufuegen-methoden in der main-funktion mit einem trycatch-block, bei dem die ArrayIndexOutOfBoundsException abgefangen wird. Im catch-block soll folgende System.out.println-Meldung erfolgen, wobei die getmessage() von der Exception angehängt werden soll: "Das Kiste ist zu klein. Die Formen konnten nicht vollständig eingeräumt werden!" Führen Sie das Projekt erneut aus und welche Ausgabe beobachten Sie nun?
24 Objektorientierte Programmierung 24 Aufgaben 2. Ablauf beim Exceptionhandling erklären: In dem Projekt Aufgabe_Exceptions sind zwei eigene Fehlerklassen von Exception abgeleitet. In der Klasse Main sind 4 try-catch-blöcke enthalten. a) Überlegen Sie sich welche Ausgaben in der Konsole bei der Abarbeitung der trycatch-böcke erfolgen. b) Führen Sie das Programm einmal mit Run aus und vergleichen Sie ihre Überlegungen aus a) mit den tatsächlichen Ausgaben. c) Begründen Sie kurz die Ausgaben unter b).
25 Objektorientierte Programmierung 25 Aufgaben 3. Vererbungsmechanismen: In dem Projekt Aufgabe_Mietfahrzeug sind die Klassen Mietfahrzeug und Gelaendewagen definiert, die in der Main-Klasse instanziiert werden. a) Welche Preise werden in der Konsolenausgabe angegeben? b) Begründen Sie kurz warum die Preise 5 und 6 identisch sind?
26 26 Anhang: Ordnerinhalte einlesen Über einen DirectoryStream werden alle Dateien eines Ordners eingelesen DirectoryStream ist ebenfalls Closeable (erbt nicht von InputStream) Über Files kann festgestellt werden, ob ein Pfad einem Ordner entspricht Path path = if (Files.isDirectory(path)) { try (DirectoryStream stream = Files.newDirectoryStream(path)) { for (Object object : stream) { System.out.println(object); catch (IOException io) { Man beachte: Die for-iteration läuft über Objekt-Instanzen Man würde Path erwarten Dies ist in Wirklichkeit auch der Fall, nur ist es mit den bisherigen Mitteln nicht möglich den Compiler davon zu überzeugen Siehe: Vorlesung Generische Datentypen
27 27 Ordnerinhalte filtern Dem newdirectorystream-aufruf kann ein weiterer Parameter mitgegeben werden, über den die Ordnerinhalte gefiltert werden können Der Parameter ist vom Typ java.nio.file.directorystream.filter Filter ist ein Interface mit einer Methode: boolean accept(object entry) throws IOException; Ein möglicher Filter, der nur Dateien mit der Endung.txt liefert: public static class MyFilter implements DirectoryStream.Filter { public boolean accept(object entry) { Path path = (Path) entry; path = path.getname(path.getnamecount() - 1); return path.tostring().endswith(".txt"); Einbinden: MyFilter filter = new MyFilter(); try (DirectoryStream stream = Files.newDirectoryStream(path, filter)) { catch (IOException io) {
Programmieren in Java
Exceptions Datei-Handling 2 Interfaces (Wiederholung) Ein Interface (Schnittstelle) ist eine abstrakte Klasse, in der alle Methoden public sind (per default, eine Sichtbarkeit muss nicht angegeben werden)
MehrProgrammieren in Java
Datei-Handling Anonyme Klassen 2 Enums Enums sind eine Aufzählung von int-werten, wobei jedes Element einem bestimmten Namen zugeordnet ist In Java werden Enums über das Schlüsselwort enum definiert und
MehrProgrammieren in Java
Programmieren in Java Einführung in die objektorientierte Programmierung Teil 4 und Exception Handling 2 Übersicht der heutigen Inhalte Interfaces Modifikatoren bei der Klassendefinition Exception Handling
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
MehrProgrammieren in Java
Generische Datentypen 2 Wiederholung: Fehlerbehandlung durch Exceptions Die Ausführung einer Methode kann jederzeit durch das Werfen einer Exception-Instanz beendet werden Methoden, die durch eine Exception
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. 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
MehrProgrammieren in Java
Einführung in die Objektorientierung Teil 4 Interfaces, innere Klassen und Polymorphie 2 Vererbung im Klassendiagram (Wiederholung) Vererbung repräsentiert eine ist ein Beziehung zwischen Klassen Ware
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
MehrAusnahmebehandlung PK11W-16,
Ausnahmebehandlung PK11W-16, 05. 12. 2011 1 Laufzeitfehler weitere Ausführung unmöglich Ausnahme geworfen Beispiele: ArrayIndexOutOfBoundsException NullPointerException ArithmeticException AssertionError
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
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();
MehrProgrammieren in Java
Einführung in die Objektorientierung Teil 4 Interfaces, Polymorphie und innere Klassen 2 Vererbung im Klassendiagramm (Wiederholung) Vererbung repräsentiert eine ist ein Beziehung zwischen Klassen Object
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
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
MehrProgrammieren in Java
Programmieren in Java Dateien lesen und schreiben 2 Übersicht der heutigen Inhalte File Streams try-with-resources Properties csv-dateien 3 Klasse File Die Klasse java.io.file bietet Unterstützung im Umgang
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.
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
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)
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)
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,
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
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
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
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
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
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
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.
MehrEinfü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
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
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
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
MehrProgrammieren in Java
Programmieren in Java Fehlerbehandlung und Ein- und Ausgabe Titel der Präsentation 2 Fehler = Exceptions? Die Exception- bzw. Ausnahmebehandlung in Java ist eine spezielle Form der Fehlerbehandlung Typischerweise
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:
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
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
MehrTeil 5 - Java. Programmstruktur Operatoren Schlüsselwörter Datentypen
Teil 5 - Java Programmstruktur Operatoren Schlüsselwörter Datentypen 1 Kommentare in Java In Java gibt es drei Möglichkeiten zur Kommentierung: // Kommentar Alle Zeichen nach dem // werden ignoriert. für
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.
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
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
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.
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
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
MehrJava I Vorlesung Exceptions
Java I Vorlesung 8 Exceptions 14.6.2004 Exceptions (Ausnahmen) Klassen für Ein- und Ausgabe Ausnahmen Ausnahmen (Exceptions) sind ein Mechanismus zum kontrollierten Melden und Reagieren auf Fehler. Man
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);
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,
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
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
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
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
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. 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
MehrEinführung in die Programmierung Blockkurs Java
Michael Bader 19. 25. Februar 2003 Freitag Inhaltsübersicht Exceptions und Errors Ausnahmebehandlung: try/catch/finally Threads Zugriffskontrolle bei gemeinsamen Variablen: synchronized, wait(), notify()
MehrImplementieren von Klassen
Implementieren von Klassen Felder, Methoden, Konstanten Dr. Beatrice Amrhein Überblick Felder/Mitglieder (Field, Member, Member-Variable) o Modifizierer Konstanten Methoden o Modifizierer 2 Felder und
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
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
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)
MehrPraxis der Programmierung
Liste, Ausnahmefehler, Template-Funktionen und -Klassen Institut für Informatik und Computational Science Henning Bordihn 1 Stack als einfach verkettete Liste 2 Aufgabe 1 1. Kopieren Sie aus /home/rlehre/w13
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
MehrMartin Unold INFORMATIK. Geoinformatik und Vermessung
Wiederholung Anweisungen durch Methodenaufrufe Ausgabe auf der Konsole System.out.println(...); Benutzereingabe einlesen = scanner.nextdatentyp(); Mathematische Funktionen Math.sqrt( ), Math.sin( ), Math.random(),
MehrEingabe und Ausgabe in Java. Dr. Horst Treiblmaier Abteilung für Wirtschaftsinformatik WU Wien
Eingabe und Ausgabe in Java Dr. Horst Treiblmaier Abteilung für Wirtschaftsinformatik WU Wien Eingabe Beispiel1 public class Input1 { public static void main(string[] args) { for (int i = 0; i < args.length;
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
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
MehrKapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen
Kapitel 9 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Attribute von Klassen, Methoden und Variablen Interfaces WS 07/08 1/ 18 2/ 18
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.........................................
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
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
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
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
MehrMartin 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
MehrHandbuch konsultieren!
Zeichenketten Klasse String Enthält zahlreiche Methoden z.b.: int length(): Anzahl der Zeichen in Zeichenkette String substring(int start): Unterzeichenkette ab Position start boolean equalsignorecase(string
MehrExceptions 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Ü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
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
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
MehrFragenkatalog ESOP WS 16/17
Fragenkatalog ESOP WS 16/17 1. Einleitung 1.1 Was ist Programmieren? 1.2 Was ist ein Programm? 1.3 Welche Schritte werden bei der Programmerstellung benötigt? 1.4 Was ist ein Algorithmus? 1.5 Was sind
MehrNeben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter
Kapitel 1 Der vierte Tag 1.1 Vererbung Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter Sprachen. Unter Vererbung versteht man die Möglichkeit, Eigenschaften vorhandener
MehrArten von Streams. Daten. Bytes (8-Bits) Java Programm. Daten. Java Programm. Characters (16 - Bits)
Datenströme Arten von Streams Daten 0 1 1 0 1 0 1 0 Java Programm Bytes (8-Bits) Daten 0 1 1 0 1 0 1 0 1 0 1 1 0 0 1 1 Java Programm Characters (16 - Bits) Byteströme(InputStream/OutputStream) I Java Programm
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
Mehr3. 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
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,
MehrObjektorientierte Programmierung
Objektorientierte Programmierung Ausnahmebehandlung und Nebenläufigkeit 9. Vorlesung am 15. Dezember 2010 Ausnahmebehandlung in Java class A { void foo() throws Help, SyntaxError {... class B extends A
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
MehrAusnahmebehandlung in Java
Ausnahmebehandlung in Java class A { void foo() throws Help, SyntaxError {... class B extends A { void foo() throws Help { if (helpneeded()) throw new Help();... try {... catch (Help e) {... catch (Exception
MehrJava : Fehlerbehandlung.
Java : Fehlerbehandlung Prinzip Callerklassen / Workerklassen Arbeitet... Callerklasse Arbeitet... Workerklasse Arbeitet... Arbeitet weiter... Fer7g! Prinzip Callerklassen / Workerklassen Main- Methode
Mehr3.11 Ausnahmen und Ein-/Ausgabe
3.11 Ausnahmen und Ein-/Ausgabe Wir werden uns in diesem Kapitel näher mit Ausnahmen und Ein-/Ausgabe in Java beschäftigen. Praktische Informatik I Wolfgang 3. Die Programmiersprache Java 3.11-1 Übersicht
MehrKapitel 13. Abstrakte Methoden und Interfaces. Fachgebiet Knowledge Engineering Prof. Dr. Johannes Fürnkranz
Kapitel 13 Abstrakte Methoden und Interfaces 13. Abstrakte Klassen und Interfaces 1. Abstrakte Klassen 2. Interfaces und Mehrfachvererbung Folie 12.2 Abstrakte Methoden und Klassen Manchmal macht es überhaupt
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
MehrSoftware Entwicklung 1. Subtyping revisited. Subtypbildung in Java: Klassen I. Subtyping und Vererbung I. Annette Bieniusa / Arnd Poetzsch-Heffter
Software Entwicklung 1 Annette Bieniusa / Arnd Poetzsch-Heffter Subtyping revisited AG Softech FB Informatik TU Kaiserslautern Bieniusa/Poetzsch-Heffter Software Entwicklung 1 2/ 40 Subtyping und Vererbung
MehrProgrammiermethodik 1. Klausur
Programmiermethodik 1. Klausur 27. 6. 2013 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 21 2 20 3 19 4 19 5 21 6 20 Gesamt 120 1 Seite 2 von 18 Aufgabe 1) Objekt-Orientierung und Vererbung
Mehr