Übungsstunde 9. Einführung in die Programmierung

Größe: px
Ab Seite anzeigen:

Download "Übungsstunde 9. Einführung in die Programmierung"

Transkript

1 Übungsstunde 9 Einführung in die Programmierung

2 Probleme bei Übung 8 [TODO Assistent]

3 Nachbesprechung Übung 9

4 Aufgabe 1: Interaktive Karte public class City extends PointOfInterest { int inhabitants ; double area; City (String name, int east, int north, int inhabitants, double area) { super(name, east, north); this.inhabitants = inhabitants ; this.area = area; Color color () { return new Color (200, 0, 0); String description () { return super.description () + " (" + inhabitants + " Einw., " + area + " km)";

5 Aufgabe 1: Interaktive Karte void show() { while(window.isopen()) {... for (int i = 0; i < pois.length ; i++) { PointOfInterest p = pois[i]; window.setcolor (p.color()); window.fillcircle (toguix(p.x), toguiy(p.y), 5); if (Math.abs(window.getMouseX () - toguix(p.x)) < 10 && Math.abs(window.getMouseY () - toguiy(p.y)) < 10) { window.drawstring (p.description (), toguix(p.x) + 10, toguiy(p.y)); window.refreshandclear (20)

6 Aufgabe 2: Miles And More (Bonus!) Feedback nach der Korrektur direkt per SVN

7 Spieler[] spieler = { new ZufallsWortSpieler(), new ZufallsWortSpielerMitGedaechtnis(), new BuchstabenSpieler(), new HaeufigeBuchstabenSpieler(), new SimulierenderBuchstabenSpieler(), new SimulierenderNGrammSpieler() ; Aufgabe 3: Ratespiel Spieler KonsolenSpieler ZufallsWortSpieler ZufallsWortSpielerMit Gedaechtnis Pr t h c TippsSpieler BuchstabenSpieler HaeufigeBuchstaben Spieler ff sto s g un üf Ni SimulierenderTipps Spieler Simulierender Buchstaben Spieler SimulierenderNGramm Spieler

8 Beispiel BuchstabenSpieler public class BuchstabenSpieler extends Spieler { String[] buchstaben = { "a",..., "z" ; String[] woerter; boolean[] aussortiert; boolean[] tippverwendet; public String gibtipp() { int uebrigew = zaehlefalse(aussortiert); int uebriget = zaehlefalse(tippverwendet); if (uebrigew > 2 && uebriget > 0) { // verwende einen Tipp, den wir noch nicht probiert haben else { // probiere eins der noch übriggebliebenen Wörter public void bekommehinweis( String tipp, String hinweis) { // setze aussortiert[i] auf 'true', falls das i-te Wort gemäss // erhaltenem Hinweis nicht mehr möglich ist.

9 Beispiel BuchstabenSpieler public class BuchstabenSpieler extends TippsSpieler { protected String[] buchstaben = {"a",..., "z"; protected String[] tipps(string[] woerter) { return buchstaben; protected int tippindex() { for(int i = 0; i < tipps.length; i++) if(!tippverwendet[i]) return i; Die Musterlösung extrahiert einen Teil der Funktionalität in eine Superklasse TippsSpieler, die auch von anderen Spielern verwendet wird

10 Vorbesprechung Übung 10

11 Aufgabe 1: Klassen (Bonus!) Koordinate koordinate = new Koordinate(1, 2); Punkt punkt = new Punkt(koordinate); Rechteck rechteck = new Rechteck(koordinate, 10, 20); Quadrat quadrat = new Quadrat(koordinate, 42); Kreis kreis = new Kreis(koordinate, 55); Zweidimensional Punkt Koordinate Form Zweidimensional[] objekte = new Zweidimensional[] { punkt, rechteck, quadrat, kreis ; Form[] formen = new Form[] { rechteck, quadrat, kreis ; Rechteck[] rechtecke = new Rechteck[] { rechteck, quadrat ; Kreis System.out.println(koordinate); for (Zweidimensional obj : objekte) { System.out.println(obj); System.out.println("--"); for (Form f : formen) { System.out.println(f + ", Flaeche: " + f.flaeche()); System.out.println("--"); for (Rechteck r : rechtecke) { System.out.println( r + ", Flaeche: " + r.flaeche() + ", Diagonale: " + r.diagonale()); Rechteck Quadrat

12 Anhang B: Ausgabe Bonusaufgabe [1, 2] Punkt([1, 2]) Rechteck([1, 2], 10, 20) Quadrat([1, 2], 42) Kreis([1, 2], 55) -Rechteck([1, 2], 10, 20), Flaeche: 200 Quadrat([1, 2], 42), Flaeche: 1764 Kreis([1, 2], 55), Flaeche: Rechteck([1, 2], 10, 20), Flaeche: 200, Diagonale: 22 Quadrat([1, 2], 42), Flaeche: 1764, Diagonale: 59 Ausgabe muss genau so aussehen

13 Aufgabe 2: Interfaces

14 Aufgabe 2: Interfaces

15

16 public class PointOfInterest implements Drawable public void draw(window window) { // TODO // SwissMap-Klasse // TODO: Add more components to window window.addcomponent(this); for(pointofinterest poi : pois){ window.addcomponent(poi); while(window.isopen()) { // All drawing and interaction should be // handled by components, so don't add // anything here. window.refreshandclear(20);

17 window.drawimagecentered( path, x, y, scale);

18

19

20 city_night.png mountain_night.png lake_night.png

21 Aufgabe 3: Exceptions Ziel: Fehlerbehandlung mit Exceptions Was, wenn datarow sinnlose Werte enthält? Person() soll eine checked-exception public class Person { public int age; // years public int weight; // kg public int height; // cm public boolean ismale; public Person( String datarow) { Scanner scanner = new Scanner(dataRow); age = scanner.nextint(); weight = scanner.nextint(); height = scanner.nextint(); String gender = scanner.next(); ismale = gender.equals( "m"); public double bodymassindex() { return * weight / (height * height); IllegalPersonFormatException werfen public class IllegalPersonFormatException extends Exception { public IllegalPersonFormatException( String message) { super(message);

22 Zusatzübungen

23 Exceptions public class TryCatch { public static void main(string[] args) { System.out.println( "main()" ); int ireturned = new TryCatch().m(); System.out.println( "m returned " + ireturned); public int m() { int i = 0; try { System.out.println( "m(): try" ); i = 100 / 0; catch (Exception e) { System.out.println( "m(): catch" ); i = 200; return i; Was wird ausgegeben?

24 Exceptions 2 public class TryCatch { public static void main(string[] args) { System.out.println( "main()" ); new TryCatch().m(); Was wird ausgegeben? public void m() { try { System.out.println( "m(): try" ); int i = 1 / 0; catch (NullPointerException e) { System.out.println( "m(): catch NullPE" ); catch (ArithmeticException e) { // Div-by-0 System.out.println( "m(): catch DivBy0" ); catch (Exception e) { System.out.println( "m(): catch Exc" ); Exception RuntimeException NullPointerException ArithmeticException

25 Exceptions 2 public class TryCatch { public static void main(string[] args) { System.out.println( "main()" ); new TryCatch().m(); public void m() { try { System.out.println( "m(): try" ); int i = 1 / 0; catch (NullPointerException e) { System.out.println( "m(): catch NullPE" ); catch (Exception e) { System.out.println( "m(): catch Exc" ); catch (ArithmeticException e) { // Div-by-0 System.out.println( "m(): catch DivBy0" ); Fängt nie etwas Fehler

26 Exceptions 3 public class TryCatch { public static void main(string[] args) { System.out.println( "main()" ); try { new TryCatch().m(); catch (RuntimeException e) { System.out.println( "main(): catch Exc" ); public void m() { try { System.out.println( "m(): try" ); int i = 1 / 0; catch (RuntimeException e) { System.out.println( "m(): catch Exc" ); throw e; Was wird ausgegeben?

27 Exceptions 4 public class TryCatch { public static void main(string[] args) { System.out.println( "main()" ); try { new TryCatch().m(); catch (Exception e) { System.out.println( "caught exception" ); Fängt checked und unchecked Exceptions Wenn checked Exception in der Methode nicht abgefangen wird, throws. checked Exceptions public void m() throws FileNotFoundException { try { throw new FileNotFoundException(); catch (RuntimeException e) { System.out.println( "unchecked exception" ); Exception RuntimeException IOException FileNotFoundException unchecked Exceptions

28 Diamanten class Vehicle { public void start() {System.out.println("start");; public void stop() {System.out.println("stop");; class Car extends Vehicle { public void honk() {System.out.println("*toot*");; class Boat extends Vehicle { public void swim() {System.out.println("swim..."); public void start() {System.out.println("depart");; class AmphiCar extends Car, Boat { Nicht möglich in Java!

29 Vehicle Diamanten start() stop() Car Boat honk() swim() start() AmphiCar Nicht möglich in Java!

30 <<I>> Vehicle Interfaces! start() stop() interface Vehicle { public void start(); public void stop(); interface Car extends Vehicle { public void honk(); interface Boat extends Vehicle { public void swim(); <<I>> Car <<I>> Boat interface AmphiCar extends Car, Boat { honk() swim() <<I>> AmphiCar Möglich mit Interfaces!

31 Interfaces! interface Vehicle { public void start(); public void stop(); class AbstractVehicle implements Vehicle { public void start() { System.out.println( "start");; public void stop() { System.out.println( "stop");; interface Car extends Vehicle { public void honk(); class BMWCar extends AbstractVehicle implements Car { public void honk() { System.out.println( "*honk*" );; interface Boat extends Vehicle { public void swim(); class SpeedBoat extends AbstractVehicle implements Boat { public void swim() { System.out.println( "swim..." ); public void start() { System.out.println( "depart" ); interface AmphiCar extends Car, Boat { class AmphiCarM770 extends AbstractVehicle implements AmphiCar { public void honk() { System.out.println( "*toot*" );; public void swim() { System.out.println( "swim..." );

32 <<I>> Vehicle start() stop() AbstractVehicle start() stop() <<I>> Car <<I>> Boat honk() swim() <<I>> AmphiCar BMWCar SpeedBoat honk() swim() AmphiCarM770

33 class Wal { void a() { System.out.print( "Wal a " ); b(); void b() { System.out.print( "Wal b " ); String tostring() { return "Wal"; class Zahnwal extends Wal { void b() { System.out.print( "Zahnwal b " ); Was wird von a() ausgegeben, wenn a() auf einem Zahnwal-Objekt aufgerufen wird?

34 class Wal { void a() { System.out.print( "Wal a " ); b(); void b() {System.out.print( "Wal b " ); String tostring() { return "Wal"; class Zahnwal extends Wal { void b() { System.out.print( "Zahnwal b " ); class Schweinswal extends Delfinartig { void b() { System.out.print( "Schweinswal b " ); class Delfinartig extends Zahnwal { void a() { System.out.print( "Delfinartig a super.a(); " ); String tostring() { return "Delfinartig" ; Wal [] intheocean = { new Zahnwal(), new Wal(), new Schweinswal(), new Delfinartig(); for (int i = 0; i < intheocean.length; i++) { System.out.println( intheocean [i]); intheocean [i].a(); System.out.println(); intheocean [i].b(); System.out.println(); System.out.println(); Was wird ausgegeben? (für den Zahnwal, Wal, Schweinswal und Delfinartig )

35 Wal Klassendiagramm a() b() tostring() class Wal { void a() { void b() { Zahnwal String tostring() { class Zahnwal extends Wal { void b() { a() b() tostring() class Delfinartig extends Zahnwal { void a() { String tostring() { class Schweinswal extends Delfinartig { void b() { Delfinartig a() b() tostring() Schweinswal a() b() tostring()

36 Subtype-Relation method Wal Zahnwal Delfinartig Schweinswal a Wal a b() Wal a b() Delfinartig a Wal a b() Delfinartig a Wal a b() b Wal b Zahnwal b Zahnwal b Schweinswal b Wal Delfinartig Delfinartig tostring Wal

37 Rekursion und einfache Liste Visualisierung (Link)

Übungsstunde 9. Einführung in die Programmierung I

Übungsstunde 9. Einführung in die Programmierung I Übungsstunde 9 Einführung in die Programmierung I Probleme bei Übung 8 [TODO Assistent] Nachbesprechung Übung 9 Aufgabe 1 Spieler Spieler[] spieler = { new ZufallsWortSpieler(), new ZufallsWortSpielerMitGedaechtnis(),

Mehr

Übungsstunde 10. Einführung in die Programmierung

Übungsstunde 10. Einführung in die Programmierung Übungsstunde 10 Einführung in die Programmierung Probleme bei Übung 8 [TODO Assistent] Nachbesprechung Übung 9 Aufgabe 1: Klassen Rätsel (Bonus!) Feedback nach der Korrektur direkt per Git Lösungsvorschlag

Mehr

Übungsstunde 11. Einführung in die Programmierung

Übungsstunde 11. Einführung in die Programmierung Übungsstunde 11 Einführung in die Programmierung Probleme bei Übung 9 [TODO Assistent] Nachbesprechung Übung 10 Aufgabe 1: Mini-Taschenrechner (Bonus!) Feedback nach der Korrektur direkt per Git Lösungsvorschlag

Mehr

Übungsstunde 10. Einführung in die Programmierung

Übungsstunde 10. Einführung in die Programmierung Übungsstunde 10 Einführung in die Programmierung Probleme bei Übung 9 [TODO Assistent] Nachbesprechung Übung 10 Aufgabe 1: Klassen (Bonus!) Feedback nach der Korrektur direkt per SVN Aufgabe 2: Interfaces

Mehr

: Einführung in die Programmierung Übungsblatt 10

: Einführung in die Programmierung Übungsblatt 10 252-0027-00: Einführung in die Programmierung Übungsblatt 10 Abgabe: 5. Dezember 2017, 13:00 Checken Sie mit Eclipse wie bisher die neue Übungs-Vorlage aus. Vergessen Sie nicht, Tests zu schreiben! Auch

Mehr

Übungsstunde 10. Einführung in die Programmierung I

Übungsstunde 10. Einführung in die Programmierung I Übungsstunde 10 Einführung in die Programmierung I Probleme bei Übung 9 [TODO Assistent] Nachbesprechung Übung 10 Aufgabe 1 Comparable boolean lessthan(comparable other) Ziel: Schreiben von Methoden,

Mehr

Übungsstunde 8. Einführung in die Programmierung

Übungsstunde 8. Einführung in die Programmierung Übungsstunde 8 Einführung in die Programmierung Probleme bei Übung 7 [TODO Assistent] Nachbesprechung Übung 8 Aufgabe 1: EBNF (Bonus!) Feedback nach der Korrektur direkt per SVN Aufgabe 2: Doubly-linked

Mehr

Übungsstunde 8. Einführung in die Programmierung I

Übungsstunde 8. Einführung in die Programmierung I Übungsstunde 8 Einführung in die Programmierung I Probleme bei Übung 7 [TODO Assistent] Aufgabe 4: Self-avoiding Random Walks Nachbesprechung Übung 8 Aufgabe 1: Doubly-linked List LinkedPersonList first:

Mehr

Übungsstunde 5. Einführung in die Programmierung

Übungsstunde 5. Einführung in die Programmierung Übungsstunde 5 Einführung in die Programmierung Probleme bei Übung 4 [TODO Assistent] Nachbesprechung Übung 5 Aufgabe 1: Testen mit JUnit Aufgabe 2: Wörter Raten do-while benötigt keinen Dummy-Wert für

Mehr

Übungsstunde 6. Einführung in die Programmierung

Übungsstunde 6. Einführung in die Programmierung Übungsstunde 6 Einführung in die Programmierung Probleme bei Übung 4 [TODO Assistent] Nachbesprechung Übung 5 Aufgabe 1: Testen mit JUnit Aufgabe 2: Wörter Raten do-while benötigt keinen Dummy-Wert für

Mehr

EINFÜHRUNG IN DIE PROGRAMMIERUNG

EINFÜ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

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

EINFÜHRUNG IN DIE PROGRAMMIERUNG

EINFÜ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

Mehr

Exceptions - Klausuraufgaben

Exceptions - Klausuraufgaben Exceptions - Klausuraufgaben (1.) Exception ist.! (a.) eine Klasse (b.) eine Schnittstelle (c.) abstrakte Klasse (d.) Keines davon (2.) Exception is in dem Java Package! (a.) java.lang (b.) java.util (c.)

Mehr

Java - Programmierung - Prozedurale Programmierung 1

Java - Programmierung - Prozedurale Programmierung 1 Java - Programmierung - Prozedurale Programmierung 1 // elementare Datentypen public class el_dt public static void main(string args []) byte b = 127; short s = 32767; int i = 2147483647; long l = 9223372036854775807L,

Mehr

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

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

Mehr

II.4.4 Exceptions - 1 -

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

Mehr

Java - Programmierung - Objektorientierte Programmierung 1

Java - Programmierung - Objektorientierte Programmierung 1 Java - Programmierung - Objektorientierte Programmierung 1 // Klassen und Objekte public class KlaObj public static void main(string args []) Klasse1 a; a = new Klasse1("heute", 47); Klasse1 b = new Klasse1

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

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

! 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

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

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

Objektorientierung II & die Java Klassenbibliothek. Kristian Bergmann und Arthur Lochstampfer Java Kurs Objektorientierung II & die Java Klassenbibliothek Kristian Bergmann und Arthur Lochstampfer Vergleich class Apfel { String farbe; int gewicht; String geerntetin; class Erdbeere { String farbe;

Mehr

Übungsstunde 3. Einführung in die Programmierung

Übungsstunde 3. Einführung in die Programmierung Übungsstunde 3 Einführung in die Programmierung Nachbesprechung Übung 3 Aufgabe 1: Folgen und Reihen import java.util.scanner; public class Reihe { public static void main(string[] args) { Scanner scanner

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

Übungsstunde 4. Einführung in die Programmierung

Übungsstunde 4. Einführung in die Programmierung Übungsstunde 4 Einführung in die Programmierung Probleme bei Übung 3 [TODO Assistent] Nachbesprechung Übung 4 Aufgabe 1: Sieb des Eratosthenes //Initialisiere das Array sieb und setze alle Werte auf true

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

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

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

Programmieren in Java

Programmieren 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

Mehr

Software Entwicklung 1. Subtyping revisited. Subtypbildung in Java: Klassen I. Subtyping und Vererbung I. Annette Bieniusa / Arnd Poetzsch-Heffter

Software 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

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

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

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

II.4.4 Exceptions - 1 -

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

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

Lösungshinweise/-vorschläge zum Übungsblatt 11: Software-Entwicklung 1 (WS 2017/18)

Lösungshinweise/-vorschläge zum Übungsblatt 11: Software-Entwicklung 1 (WS 2017/18) Dr. Annette Bieniusa Mathias Weber, M. Sc. Peter Zeller, M. Sc. TU Kaiserslautern Fachbereich Informatik AG Softwaretechnik Lösungshinweise/-vorschläge zum Übungsblatt 11: Software-Entwicklung 1 (WS 2017/18)

Mehr

Übungsstunde 7. Einführung in die Programmierung

Übungsstunde 7. Einführung in die Programmierung Übungsstunde 7 Einführung in die Programmierung Probleme bei Übung 5 [TODO Assistent] Nachbesprechung Übung 6 Aufgabe 1: Talsohlen (Bonus!) Feedback nach der Korrektur direkt per Git Lösungsvorschlag von

Mehr

II.4.2 Abstrakte Klassen und Interfaces - 1 -

II.4.2 Abstrakte Klassen und Interfaces - 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.2 Abstrakte Klassen und Interfaces - 1

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

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

Robuste Programme durch Ausnahmebehandlung

Robuste 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

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

Software Entwicklung 1

Software Entwicklung 1 Software Entwicklung 1 Annette Bieniusa / Arnd Poetzsch-Heffter AG Softech FB Informatik TU Kaiserslautern Subtyping revisited Bieniusa/Poetzsch-Heffter Software Entwicklung 1 2/ 40 Subtyping und Vererbung

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

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

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

Komponenten-basierte Entwicklung Teil 4: Exceptions

Komponenten-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

Mehr

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

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

Mehr

Übungsstunde 11. Einführung in die Programmierung

Übungsstunde 11. Einführung in die Programmierung Übungsstunde 11 Einführung in die Programmierung Probleme bei Übung 10 [TODO Assistent] Nachbesprechung Übung 11 Aufgabe 1: Linked List (Bonus!) Ergebnisse nach der Korrektur direkt per SVN Aufgabe 2:

Mehr

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

CoMa 04. Java II. Paul Boeck. 7. Mai Humboldt Universität zu Berlin Institut für Mathematik. Paul Boeck CoMa 04 7. CoMa 04 Java II Paul Boeck Humboldt Universität zu Berlin Institut für Mathematik 7. Mai 2013 Paul Boeck CoMa 04 7. Mai 2013 1 / 13 Verzweigungen Wenn-Dann Beziehungen if (BEDINGUNG) { else if (BEDINGUNG2)

Mehr

Kapitel 10. Programmierkurs. Grundlagen von Exceptions Behandlung von Exceptions

Kapitel 10. Programmierkurs. Grundlagen von Exceptions Behandlung von Exceptions Kapitel 10 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Exceptions Behandlung von Exceptions Verschiedene Exceptions Mehrere catch-anweisungen Der finally-block WS

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

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

! 1. Unterklassen und Vererbung! 2. Abstrakte Klassen und Interfaces! 3. Modularität und Pakete. II.4.2 Abstrakte Klassen und Interfaces - 1 -

! 1. Unterklassen und Vererbung! 2. Abstrakte Klassen und Interfaces! 3. Modularität und Pakete. II.4.2 Abstrakte Klassen und Interfaces - 1 - ! 1. Unterklassen und Vererbung! 2. Abstrakte Klassen und Interfaces! 3. Modularität und Pakete II.4.2 Abstrakte Klassen und Interfaces - 1 - Ähnliche Programmteile public class Bruchelement { Bruch wert;

Mehr

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

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

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

Matrikelnummer:

Matrikelnummer: Übungen zur Informatik A Hauptklausur 20.02.2003 Universität Koblenz-Landau Institut für Informatik WS 2002/3 Prof. Dr. Dietrich Paulus Dr. Manfred Jackel Bitte lösen Sie jede Aufgabe auf dem jeweiligen

Mehr

Lösungsvorschläge zur Nachklausur zum Kurs 1618 Sommersemester 2001 am

Lösungsvorschläge zur Nachklausur zum Kurs 1618 Sommersemester 2001 am Aufgabe 1 Lösungsvorschläge zur Nachklausur zum Kurs 1618 Sommersemester 2001 am 16.3.2002 Folgende Implementierung löst die gestellte Aufgabe : public interface Figur { public void anzeigen (); public

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

// compiliert, aber Programmabbruch zur Laufzeit: einesuppe = ((EßbarerPilz)einPilz).kochen();

// compiliert, aber Programmabbruch zur Laufzeit: einesuppe = ((EßbarerPilz)einPilz).kochen(); Typecast class Pilz void suchen() void sammeln() class EßbarerPilz extends Pilz Suppe kochen() Suppe einesuppe = new Suppe(); return einesuppe; class GiftPilz extends Pilz void entsorgen() class Suppe

Mehr

Zuverlässigkeit von Programmen: Behandlung von Ausnahmesituationen

Zuverlässigkeit von Programmen: Behandlung von Ausnahmesituationen Zuverlässigkeit von Programmen: Behandlung von Ausnahmesituationen 6.1 Behandlung von Ausnahmesituationen 6.3 Die Zusicherungsanweisung 6.1 Behandlung von Ausnahmesituationen 6-1 ArithmeticException import

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

Einführung in die Programmierung I. 2.0 Einfache Java Programme. Thomas R. Gross. Department Informatik ETH Zürich

Einführung in die Programmierung I. 2.0 Einfache Java Programme. Thomas R. Gross. Department Informatik ETH Zürich 252-0027 Einführung in die Programmierung I 2.0 Einfache Java Programme Thomas R. Gross Department Informatik ETH Zürich Uebersicht 2.0 Einfache Java Programme Struktur Namen Output 2 Graphische Darstellung

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

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 22 Einstieg in die Informatik mit Java Grundlagen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 22 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White

Mehr

Java : Fehlerbehandlung.

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

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form

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

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

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 Einführung Exception Handling. Kapitel 17

Java Einführung Exception Handling. Kapitel 17 Java Einführung Exception Handling Kapitel 17 Inhalt Was sind Exceptoins? Wie werden sie ausgelöst? Wie kann man Exceptions behandeln? Erweiterung von Exceptions Spezialfall IO 2 Ausnahmezustände Im Ablauf

Mehr

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

Ausnahmenbehandlung in Java. Dr. Horst Treiblmaier Abteilung für Wirtschaftsinformatik WU Wien Ausnahmenbehandlung in Java Dr. Horst Treiblmaier Abteilung für Wirtschaftsinformatik WU Wien Was sind Exceptions? Eine Ausnahme (Exception) ist ein Objekt einer Unterklasse von Throwable Eine Ausnahme

Mehr

Problemstellung. Object1:Klasse1. Object2:Klasse2 att1: Klasse1 att2: 9. att1: att2: 17. Klasse1 att1 att2 Klasse2 att1 att2

Problemstellung. Object1:Klasse1. Object2:Klasse2 att1: Klasse1 att2: 9. att1: att2: 17. Klasse1 att1 att2 Klasse2 att1 att2 Problemstellung Objekt mit aggregierten Objekten: att1: att2: 17 Object1:Klasse1 Object2:Klasse2 att1: Klasse1 att2: 9 serialisiert als Datei: Klasse1 att1 att2 Klasse2 att1 att2 -Speicherung von Objekten

Mehr

Übungsstunde 6. Einführung in die Programmierung

Übungsstunde 6. Einführung in die Programmierung Übungsstunde 6 Einführung in die Programmierung Probleme bei Übung 5 [TODO Assistent] Nachbesprechung Übung 6 Feedback nach der Korrektur direkt per SVN public class Person { int alter; double gewicht;

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

Kapitel 9: Klassen und höhere Datentypen. Selektoren

Kapitel 9: Klassen und höhere Datentypen. Selektoren Selektoren Üblicherweise erlaubt man keinen (direkten) öffentlichen (public) Zugang zu Objektvariablen mehr Kontrolle über Zugang interne Details besser verborgen Statt dessen: Zugriff auf privates Feld

Mehr

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

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

Mehr

Übungslösungen. 1. Übung

Übungslösungen. 1. Übung Übungslösungen 1. Übung import cib.lehre.baustelle.go.*; import cib.lehre.baustelle.po.baugeraet.*; import cib.lehre.baustelle.po.einrichtungselemente.*; import java.util.*; public class Klasse1 { public

Mehr

Musterübung 09: Vererbung und Dynamische Bindung

Musterübung 09: Vererbung und Dynamische Bindung Musterübung 09: Vererbung und Dynamische Bindung Abgabetermin: TT.MM.JJJJ Name: Matrikelnummer: Gruppe: G1 (Prähofer) G2 (Prähofer) G3 (Hofer) G4 (Angerer) Aufgabe Punkte gelöst abzugeben schriftlich abzugeben

Mehr

Informatik II Musterlösung

Informatik II Musterlösung Ludwig-Maximilians-Universität München SS 2006 Institut für Informatik Übungsblatt 8 Prof. Dr. M. Wirsing, M. Hammer, A. Rauschmayer Informatik II Musterlösung Zu jeder Aufgabe sind Dateien abzugeben,

Mehr

Prinzip des Exception Handling

Prinzip des Exception Handling Prinzip des Exception Handling geschützter Block p(); catch (Exception e) { System.out.println(e.toString()); void p() throws Exception { throw new Exception(); Auslösen einer Exception Exception Handler

Mehr

Informatik II. Übungsstunde 6. Distributed Systems Group, ETH Zürich

Informatik II. Übungsstunde 6. Distributed Systems Group, ETH Zürich Informatik II Übungsstunde 6 simon.mayer@inf.ethz.ch Distributed Systems Group, ETH Zürich Ablauf Besprechung der Vorlesung Uebungsbezogene Themen: Statisches & Dynamisches Type Checking Zeit zum Programmieren...

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

Übung 09: Vererbung und Dynamische Bindung

Übung 09: Vererbung und Dynamische Bindung Übung 09: Vererbung und Dynamische Bindung Abgabetermin: TT.MM.JJJJ Name: Matrikelnummer: Gruppe: G1 (Prähofer) G2 (Prähofer) G3 (Wolfinger) G4 (Wolfinger) Aufgabe Punkte gelöst abzugeben schriftlich abzugeben

Mehr

Kapitel 12: Ausnahmen und Ausnahmebehandlung

Kapitel 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

Mehr

II.4.1 Unterklassen und Vererbung - 1 -

II.4.1 Unterklassen und Vererbung - 1 - 1. Grundelemente der Programmierung 2. Objekte, Klassen und Methoden 3. Rekursion und dynamische Datenstrukturen 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.4.1 Unterklassen und Vererbung

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

Mobile und Verteilte Datenbanken

Mobile und Verteilte Datenbanken Mobile und Verteilte Datenbanken Java RMI Vorlesung Wintersemester 2010/2011 groppe@ifis.uni-luebeck.de Institut für Informationssysteme Universität zu Lübeck Java Remote Method Invocation (RMI) Realisierung

Mehr

Javakurs zu Informatik I. Henning Heitkötter

Javakurs zu Informatik I. Henning Heitkötter Javakurs zu Informatik I Arrays vergleichen Implementieren Sie folgende Methode, die prüft, ob die Elemente der beiden Arrays an jeder Position übereinstimmen: public static boolean identisch(int[] a,

Mehr