Handbuch konsultieren!

Ähnliche Dokumente
Java Einführung Exception Handling. Kapitel 17

Eingabe und Ausgabe in Java. Dr. Horst Treiblmaier Abteilung für Wirtschaftsinformatik WU Wien

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

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

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

Ausnahmebehandlung PK11W-16,

Ausdrucksbäume in verschiedenen Darstellungen

Einstieg in die Informatik mit Java

! 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

9. Ausnahmebehandlung

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

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

Kapitel 10. Programmierkurs. Grundlagen von Exceptions Behandlung von Exceptions

1 Klassen anlegen und Objekte erzeugen

1 Klassen anlegen und Objekte erzeugen

Kapitel 12. Programmierkurs. Allgemeine Konzepte Byte-Streams versus Character-Streams

Vorlesung 10. Sitzung Grundlegende Programmiertechniken

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

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

9. Ausnahmebehandlung

boolean ispalindrome = word.equalsignorecase(reverse.tostring());

Java Fehlerbehandlung

Objektorientierung II & die Java Klassenbibliothek. Kristian Bergmann und Arthur Lochstampfer

Informatik 1 - Translation Studies in Information Technology. Musterlösung zum Aufgabenblatt der ersten Pflichtübung im Wintersemester 16/17

Klassen und Objekte. Objekte einer Klasse bilden

Abschnitt 7: Weitere Konzepte der oo Programmierung in Java

Kapitel 10. Programmierkurs. Grundlagen von Exceptions Behandlung von Exceptions

Distributed Computing Group

Java - Programmierung - Prozedurale Programmierung 1

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

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

Programmiertechnik Ausnahmen

Programmieren I. Dateien: Allgemeines. Vorlesung 10. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Wintersemester 2010/2011

Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.

Autoboxing - Nachtrag

Software Entwicklung 1

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

Konstruktor. public Rational(int i) { Zaehler = i; Nenner = 1; }

Teil 5 - Java. Programmstruktur Operatoren Schlüsselwörter Datentypen

java.io Ziel Ressourcen Page 1 Verstehen der unterschiedlichen I / O Möglichkeiten Anwenden der Java I/ O Klassen Java Tutorial Java API Dokumentation

Dateien: Allgemeines Dateien lesen Beispiel: CSV-Daten Filter Ausgabe in Dateien. Programmieren I. Martin Schultheiß

Programmieren in Java

II.4.4 Exceptions - 1 -

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

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java

Dateien: Allgemeines Dateien lesen Beispiel: CSV-Daten Filter Ausgabe in Dateien. Programmieren I. Dr. Klaus Höppner

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

Fakultät IV Elektrotechnik/Informatik

Ausnahmen und IO. Fehler, Ausnahmen, Java- Exception, throw, catch, Ströme, Puffer, Dateien lesen, schreiben, Tastatur, Terminal, HTTP

Zuverlässigkeit von Programmen: Behandlung von Ausnahmesituationen

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

Algorithmen und Programmierung III

Vorlesung Informatik II

System.out.println("TEXT");

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

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

Java Übung. Übung 3. Werner Gaulke. 2. Mai Universität Duisburg-Essen Kommedia, Übung EinPro SS06, Einführung in Java - Übung.

7. Java Fehler und Ausnahmen

II.1.1. Erste Schritte - 1 -

Grundlagen der Programmierung! Kapitel 10: Ein- und Ausgabe! Ziele dieses Kapitels! Datei! Das Problem!

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

Java I Vorlesung Exceptions

Sequenz Verzweigung (Selektion, Auswahl) Schleife (Repetition, Wiederholung)

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

Ein- und Ausgabe in Java

Programmieren in Java

Client-Server TCP/IP - Kodierung

Interaktive Programme mit Scanner

Programmiermethodik 1. Klausur

Klausur Softwaretechnik / JAVA Fachbereich BW, für WINFO

String vs. StringBuffer. Class String

Ein String ist in Java eigentlich eine Klasse, wir können ihn aber zunächst als Datentyp betrachten, der zur Speicherung von Zeichenketten dient.

1.7 Fehler- und Ausnahmebehandlung

15 Fehlerobjekte: Werfen, Fangen, Behandeln

AK-Automatisierungs und Kommunikationstechnik TI Technische Informatik. NWT Netzwerktechnik

Abschnitt 18: Beispiel: I/O-Streams

Mögliche Implementierung von intern():

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

Javakurs zu Informatik I. Henning Heitkötter

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

Dateien. DVG Dateien 1

JAVA für Einsteiger. Streams und Dateien. eden market Autor: Norman Lahme

15 Fehlerobjekte: Werfen, Fangen, Behandeln

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

CoMa 04. Java II. Paul Boeck. 7. Mai Humboldt Universität zu Berlin Institut für Mathematik. Paul Boeck CoMa 04 7.

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 1 - Variablen und Kontrollstrukturen

Welcome to java. einfach objektorientiert verteilt interpretierend robust secure architekturneutral portabel schnell parallel(multitheded)

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

Einstieg in die Informatik mit Java

Grundlagen der Programmierung. Kapitel 10: Ein- und Ausgabe. Ziele dieses Kapitels. Das Problem. Datei

Grundlagen der Programmierung. Kapitel 11: Ein- und Ausgabe. Ziele dieses Kapitels. Das Problem. Datei

Musterlösung Stand: 5. Februar 2009

Transkript:

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 s): Vergleich zweier Zeichenketten, Groß-/Kleinschreibung wird ignoriert boolean startswith(string s): true, wenn Zeichenkette mit s beginnt int indexof(string s): Position des Beginns einer Unterzeichenkette s... Handbuch konsultieren!

Klasse String Beispiel: // Datei: Beispiel10.java public class Beispiel10 { public static void main(string[] args) { double d=0; int i=0; boolean ddef=false, idef=false; for(int ac=0; ac<args.length; ac++) { if(args[ac].startswith("d=")) { d = Double.parseDouble(args[ac].substring(2)); ddef = true; if(args[ac].startswith("i=")) { i = Integer.parseInt(args[ac].substring(2)); idef = true; if(ddef) System.out.println("d = " + d); if(idef) System.out.println("i = " + i);

Klasse String Beispiel: vergleicht Anfang des Arguments mit d= // Datei: Beispiel10.java public class Beispiel10 { public static void main(string[] args) { double d=0; int i=0; boolean ddef=false, idef=false; for(int ac=0; ac<args.length; ac++) { if(args[ac].startswith("d=")) { d = Double.parseDouble(args[ac].substring(2)); ddef = true; if(args[ac].startswith("i=")) { i = Integer.parseInt(args[ac].substring(2)); idef = true; if(ddef) System.out.println("d = " + d); if(idef) System.out.println("i = " + i);

Klasse String Beispiel: // Datei: Beispiel10.java public class Beispiel10 { public static void main(string[] args) { double d=0; int i=0; boolean ddef=false, idef=false; for(int ac=0; ac<args.length; ac++) { if(args[ac].startswith("d=")) { d = Double.parseDouble(args[ac].substring(2)); ddef = true; if(args[ac].startswith("i=")) { i = Integer.parseInt(args[ac].substring(2)); idef = true; if(ddef) System.out.println("d = " + d); if(idef) System.out.println("i = " + i);

Klasse String Beispiel: konvertiert Rest des Arguments in double // Datei: Beispiel10.java public class Beispiel10 { public static void main(string[] args) { double d=0; int i=0; boolean ddef=false, idef=false; for(int ac=0; ac<args.length; ac++) { if(args[ac].startswith("d=")) { d = Double.parseDouble(args[ac].substring(2)); ddef = true; if(args[ac].startswith("i=")) { i = Integer.parseInt(args[ac].substring(2)); idef = true; if(ddef) System.out.println("d = " + d); if(idef) System.out.println("i = " + i);

Klasse String Beispiel: // Datei: Beispiel10.java public class Beispiel10 { public static void main(string[] args) { double d=0; int i=0; boolean ddef=false, idef=false; for(int ac=0; ac<args.length; ac++) { if(args[ac].startswith("d=")) { d = Double.parseDouble(args[ac].substring(2)); ddef = true; if(args[ac].startswith("i=")) { i = Integer.parseInt(args[ac].substring(2)); idef = true; if(ddef) System.out.println("d = " + d); if(idef) System.out.println("i = " + i);

Klasse String Beispiel: analog für i= und int // Datei: Beispiel10.java public class Beispiel10 { public static void main(string[] args) { double d=0; int i=0; boolean ddef=false, idef=false; for(int ac=0; ac<args.length; ac++) { if(args[ac].startswith("d=")) { d = Double.parseDouble(args[ac].substring(2)); ddef = true; if(args[ac].startswith("i=")) { i = Integer.parseInt(args[ac].substring(2)); idef = true; if(ddef) System.out.println("d = " + d); if(idef) System.out.println("i = " + i);

Klasse String Beispiel: analog für i= und int // Datei: Beispiel10.java public class Beispiel10 { public static void main(string[] args) { double d=0; int i=0; boolean ddef=false, idef=false; for(int ac=0; ac<args.length; ac++) { if(args[ac].startswith("d=")) { d = Double.parseDouble(args[ac].substring(2)); ddef = true; if(args[ac].startswith("i=")) { i = Integer.parseInt(args[ac].substring(2)); idef = true; if(ddef) System.out.println("d = " + d); if(idef) System.out.println("i = " + i); Beispielaufruf: java Beispiel10 i=493 d=-123.456

Ausnahmebehandlung

Ausnahmebehandlung Behandlung von Laufzeit-Fehlern in Java: Fehler (z.b. Division durch 0): Löse Ausnahme aus durch Erzeugen eines Objekts einer Ausnahmeklasse Methode kann Ausnahme selbst behandeln oder an aufrufende Methode weiterreichen Werden Ausnahme nur weitergereicht und nicht behandelt Programm bricht mit Fehlermeldung ab Einige Ausnahmen müssen beachtet werden Beispiel: throw new RuntimeException("Division durch Null"); in Klasse Rational oder Complex: Gibt Fehlermeldung aus und bricht Programm ab

Ausnahmen behandeln try { Anweisungen1 catch (Ausnahmetyp Bezeichner) { Anweisungen2 Tritt beim Ausführen von Anweisungen1 eine Ausnahme vom Typ Ausnahmetyp auf, werden Anweisungen2 angesprungen Beispiel: // Datei: Beispiel11.java public class Beispiel11 { public static void main(string[] args) { int a=4, b=-4, c; try { c = a+b; b = a/c; System.out.println("b = " + b); catch (ArithmeticException e) { System.out.println("Ausnahme: " + e.getmessage() );

Ausnahmen weitergeben Vollständige Methoden-Deklaration: [Modifizierer] Typ Methodenname([Parameter]) [throws Ausnahme-Liste] { Anweisungen Ausnahme-Liste: Eine oder mehrere durch Kommas getrennte Ausnahmeklassen Bei der Methodendeklaration aufgeführte Ausnahmeklassen werden an die aufrufende Methode übergeben

Ausnahmen auslösen Ausnahme erzeugen: über Konstruktor der Ausnahmeklasse (ggfs. mit Text als Parameter) auslösen über: throw Ausnahmeobjekt; Beispiel (s. vorne): throw new RuntimeException("Division durch Null");

Ein- / Ausgabe

Eingabe von Konsole // Datei: Beispiel12.java import java.io.*; // Importiere Ein-/Ausgabeklassen public class Beispiel12 { // Achtung: IOException moeglich public static void main(string[] args) throws IOException { // BufferedReader liest aus einem Reader BufferedReader ein = new BufferedReader( // Oeffene Eingabestrom auf Eingabe new InputStreamReader(System.in) ); System.out.print("Bitte Text eingeben: "); // verwende Methode readline() von BufferedReader String line = ein.readline(); System.out.println("Text: " + line); ein.close(); // Schliesse den BufferedReader Ein-/Ausgabeklassen müssen import iert werden verwende InputStream in der Klasse System öffne einen InputStreamReader auf InputStream System.in öffne einen BufferedReader darüber dieser stellt die Methode readline() zur Verfügung

Ausgabe in Datei // Datei: Beispiel13.java import java.io.*; // Importiere Ein-/Ausgabeklassen public class Beispiel13 { // Achtung: IOException moeglich public static void main(string[] args) throws IOException { // PrintWriter stellt print-methoden zur Verfuegung PrintWriter Datei = new PrintWriter( // Oeffne Ausgabedatei "Test-datei.tst" new FileWriter("Test-datei.tst") ); // Schreibe in Datei Datei.println("Hier\tist\neine\tTestzahl:\t" + 17); Datei.close(); // Schliesse Datei Filewriter schreibt in eine Datei PrintWriter stellt die Methoden print() und println() zur Verfügung (vgl. System.out) Die Methode close() schließt die Datei

Lesen aus Datei // Datei: Beispiel14.java import java.io.*; public class Beispiel14 { public static void main(string[] args) throws IOException { LineNumberReader ein = new LineNumberReader( new FileReader("Beispiel14.java") ); String line; while((line = ein.readline())!= null) System.out.println(ein.getLineNumber() // Zeilennummer + " : " + line); ein.close(); // Schliesse Eingabe FileReader erlaubt Zugriff auf Datei LineNumberReader liest aus Eingabestrom und stellt die Methode getlinenumber() zur Verfügung BufferedReader: dito, jedoch ohne Zeilennummer; stellt die Methode readline() zur Verfügung (readline() gibt am Dateiende null zurück)

Lesen aus Datei // Datei: Beispiel14.java import java.io.*; public class Beispiel14 { public static void main(string[] args) throws IOException { LineNumberReader ein = new LineNumberReader( new FileReader("Beispiel14.java") ); String line; while((line = ein.readline())!= null) System.out.println(ein.getLineNumber() // Zeilennummer + " : " + line); ein.close(); // Schliesse Eingabe FileReader erlaubt Zugriff auf Datei LineNumberReader liest aus Eingabestrom und stellt die Methode getlinenumber() zur Verfügung BufferedReader: dito, jedoch ohne Zeilennummer; stellt die Methode readline() zur Verfügung (readline() gibt am Dateiende null zurück) mehr im Handbuch