CuP - Java Zwölfte Vorlesung Klassen – Komposition und Vererbung Freitag, 15. November 2002.

Slides:



Advertisements
Ähnliche Präsentationen
M a r c – o l i v e r p a h l Informatik I – Kapitel 7 Klassen und höhere Datentypen Zusammenfassung des Kapitel 7 Küchlin, Weber, Einführung in die Informatik,
Advertisements

der Universität Oldenburg
der Universität Oldenburg
Objektorientierte Programmierung
Objektorientierte Programmierung
der Universität Oldenburg
Klassen - Verkettete Liste -
DVG Einfache Klassen Einfache Klassen. DVG Einfache Klassen 2 Strukturen Beispiel: Personendaten bestehen aus –String name –String vorname.
Anwendungen des OODM auf die ADB / NDB
PKJ 2005/1 Stefan Dissmann Vorwoche - Klasse public class Studierende { private String name, vorname, studiengang; private int matNr, semester; private.
Klassen in Java.
Zusammenfassung des Kapitels 8
Prof. Dr.-Ing. habil. B. Steinbach - Informatik / Softwaretechnologie und Programmierungstechnik - Institut für Informatik F Verteilte Software - Java.
Verteilte Software - Java - Prozedurale Programmierung 1
Java: Objektorientierte Programmierung
Java: Referenzen und Zeichenketten
Java: Grundlagen der Objektorientierung
FH-Hof Fehlerbehandlung Richard Göbel. FH-Hof Konzept Fehler können mit dem Operator throw einer übergeordneten Funktion signalisiert werden. Parameter.
IF-ELSE-IF-Ketten Weiter mit PP..
Konstruktoren.
Assoziationen (Beziehungen) 1 : n. Zu einem Auto gibt es mehrere Fahrer (2) und zu diesen 2 Fahrern gibt es genau dieses Auto.
WHILE - Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
FOR Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
DO...WHILE Anweisung.
Benötigte Applets Startseite: in HTML-Format Applet auf der Startseite Das Applet, das auf der Startseite geladen wird, wird die vier Buttons und die eine.
M a r c – o l i v e r p a h l Die ObjektOrientierte Mühle Das Beispiel soll noch einmal das Konzept der Objektorientiertheit erläutern. Dabei werden außerdem.
Objektorientierte Programmierung JDK-Klassenbibliothek
Programmieren mit JAVA
PRJ 2007/1 Stefan Dissmann Motivation Problem: gleiche Datenstrukturen werden für verschiedene Objekte gebraucht: z.B. Listen von Studierenden, Kunden,
PKJ 2005/1 Stefan Dissmann Ausblick Es fehlen noch: Möglichkeiten zum Strukturieren größerer Programme Umgang mit variabler Zahl von Elementen Umgang mit.
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
Proxy Pattern Vorlesung Design Patterns Sieglinde Heinrich
F açade P attern By Nicolas Lanquetin. Façade Pattern Structural Pattern Bietet ein gemeinsames Interface, anstatt vieler Interfaces eines Subsystems.
DVG Einführung in Java1 Einführung in JAVA.
DVG Einfache Klassen 1 Einfache Klassen. 2DVG Einfache KlassenStrukturen Beispiel: Personendaten bestehen aus String name String name.
Java in 9 Folien Besser: Online-Buch Go to Java 2.
Thema: Fibonacci-Zahlen
Bestimmung des ggT zweier Zahlen
Verzweigung.
Vererbung Einfache Vererbung – Erben von abstrakten Klassen – Implementieren eines Interfaces.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
FH-Hof Singleton Pattern Richard Göbel. FH-Hof Motivation Bestimmte Klassen sollen nur ein Objekt haben Nur ein Fabrikobjekt für eine Fabrikklasse Zentraler.
PRJ 2007/1 Stefan Dissmann Verkettete datenstruktur: Liste Problem: Liste, die eine beliebige Zahl von Elementen verwaltet Operationen: Erzeugen, Anfügen,
Rekursive Funktionen (Fakultät)
Abteilung für Telekooperation Übung Softwareentwicklung 1 für Wirtschaftsinformatik Dr. Wieland Schwinger
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
CuP - Java Elfte Vorlesung Montag, 11. November 2002.
Abteilung für Telekooperation Übung Softwareentwicklung 1 für Wirtschaftsinformatik Dr. Wieland Schwinger
CuP - Java Eingabe über Tastatur, AudioClips, überschreiben, Quiz Montag, 18. November 2002.
Wilfried Imrich CuP - Java Erste Vorlesung Entspricht ungefähr Kapitel 1.1 des Skriptums Wilfried Imrich Montanuniversität Leoben Freitag, 4. Oktober 2002.
CuP - Java Neunte Vorlesung Entspricht Kapitel 4.2 und 5 des Skriptums
CuP - Java Vierte Vorlesung Entspricht ungefähr Kapitel 2.1 des Skriptums Montag, 14. Oktober 2002.
CuP - Java Sechste Vorlesung Entspricht ungefähr Kapitel 3. 1 – 3
Programmierung von Agenten in Java: Implementierung einer Supply-Chain
Lind 02/2005 Einführung in JAVA. Lind 02/2005 Beispiel: Mittelwert Es soll ein Programm erstellt werden, das den Mittelwert zweier reeller Zahlen berechnet.
Programmiervorkurs WS 2014/15 Methoden
Programmiervorkurs WS 2014/15 Schleifen
Programmiervorkurs WS 2014/15 Instanzmethoden
Java-Kurs - 8. Übung Besprechung der Hausaufgabe.
CuP - Java Achte Vorlesung Entspricht ungefähr Kapitel 4.1 des Skriptums Montag, 28. Oktober 2002.
Natürliches Programmieren
© 2004 Pohlig Informatik Kurse © 2004 Pohlig Informatik Kurse Der Tramp tanzt die Rekursion zünderUntersuchen(…) Basisfall Rückmeldung:
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Objektorientierung Gliederung von Daten und Funktionen zu Objekten
Vererbung.
Mit der Turtle Java Programmieren
Cäsar-Verschlüsselung
Grundkurs Informatik mit Java
Mit Java die Turtle steuern
Cäsar-Verschlüsselung
 Präsentation transkript:

CuP - Java Zwölfte Vorlesung Klassen – Komposition und Vererbung Freitag, 15. November 2002

15. November 2002 CuP WS 2002/ Die Klasse Name Name hat: Zwei Attribute vom Typ String Drei Konstruktoren Zwei Zugangsmethoden Zwei Mutationsmethoden Eine Ausgabemethode

15. November 2002 CuP WS 2002/ Implementation der Klasse Name (1/3) public class Name{ private String vorname; private String nachname; Name(){ } Name(String vorname, String nachname){ this.vorname = vorname; this.nachname = nachname; }

15. November 2002 CuP WS 2002/ Implementation der Klasse Name (2/3) Name(String nachname){ this.nachname = nachname; } String vorname(){ return vorname; } String nachname(){ return nachname; } void setzeVorname(String vorname){ this.vorname = vorname; }

15. November 2002 CuP WS 2002/ Implementation der Klasse Name (3/3) void setzeNachname(String nachname){ this.nachname = nachname; } public String toString(){ String s = new String(); if (vorname != null) s = s + vorname + " "; if(nachname != null) s = s + nachname; return s; }

15. November 2002 CuP WS 2002/ Die Klasse TesteName public class TesteName{ public static void main(String[ ] args){ Name jk = new Name("Johannes", "Kepler"); Name ae = new Name("Einstein"); System.out.println(jk.toString() + " entschluesselte das Geheimnis der Planetenbahnen."); System.out.println("Sein Vorname ist " + jk.vorname() + "."); System.out.println(ae.toString() + " entwickelte die allgemeine Relativitaetstheorie."); ae.setzeVorname("Albert"); System.out.println(ae.toString()+"."); }

15. November 2002 CuP WS 2002/ Anweisungsschema Johannes Kepler vorname nachname jk Einstein vorname nachname ae NameString Name

15. November 2002 CuP WS 2002/ Die Klasse Person (1/3) class Person{ protected Name name; protected char geschlecht; // m oder w protected String kennnummer; // z.B. Sozialversicherungsnummer Person(Name name, char geschlecht){ this.name = name; this.geschlecht = geschlecht; }

15. November 2002 CuP WS 2002/ Die Klasse Person (2/3) Name name(){ return name; } char geschlecht(){ return geschlecht; } String kennnummer(){ return kennnummer; }

15. November 2002 CuP WS 2002/ Die Klasse Person (3/3) void setzeKennnummer(String kennnummer){ this.kennnummer = kennnummer; } public String toString(){ String s = new String(name.toString() + " (Geschlecht: " + geschlecht +")"); return s; }

15. November 2002 CuP WS 2002/ Die Klasse TestePerson class TestePerson{ public static void main(String[] args){ Name bobsName = new Name("Robert", "Dylan"); Person bob = new Person(bobsName, 'm'); System.out.println(bob.toString()); }

15. November 2002 CuP WS 2002/ Die Klasse Mensch (1/5) class Mensch{ protected Name name; protected char geschlecht; // m oder w protected String kennnummer; // z.B. //Sozialversicherungsnummer protected Mensch vater; protected Mensch mutter;

15. November 2002 CuP WS 2002/ Die Klasse Mensch (2/5) private static final String ZR = " "; private static String tab = ""; Mensch(Name name, char geschlecht){ this.name = name; this.geschlecht = geschlecht; }

15. November 2002 CuP WS 2002/ Die Klasse Mensch (3/5) Name name(){ return name; } char geschlecht(){ return geschlecht; } String kennnummer(){ return kennnummer; }

15. November 2002 CuP WS 2002/ Die Klasse Mensch (4/5) void setzeKennnummer(String kennnummer){ this.kennnummer = kennnummer; } void setzteVater(Mensch vater){ this.vater = vater; } void setzeMutter(Mensch mutter){ this.mutter = mutter; }

15. November 2002 CuP WS 2002/ Die Klasse Mensch (5/5) public String toString(){ String s = new String(name.toString() + " (Geschlecht: " + geschlecht +")"); s = s + "\n"; if(mutter != null){ tab = tab + ZR; s = s + tab + "Mutter: " + mutter.toString(); } return s; }

15. November 2002 CuP WS 2002/ Die Klasse TesteMensch class TesteMensch{ public static void main(String[] args){ Mensch ww = new Mensch(new Name("William", "Windsor"), 'm'); Mensch cw = new Mensch(new Name("Charles", "Windsor"), 'm'); Mensch ew = new Mensch(new Name("Elisabeth ", "Windsor"), 'w'); cw.setzeMutter(ew); System.out.println(cw.toString()); }