Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Java-Kurs - 9. Übung Besprechung der Hausaufgabe Klassen und Objekte: Vererbung Konzeptueller Hintergrund: Spezialisierung Modellierung mittels UML Vererben.

Ähnliche Präsentationen


Präsentation zum Thema: "Java-Kurs - 9. Übung Besprechung der Hausaufgabe Klassen und Objekte: Vererbung Konzeptueller Hintergrund: Spezialisierung Modellierung mittels UML Vererben."—  Präsentation transkript:

1 Java-Kurs - 9. Übung Besprechung der Hausaufgabe Klassen und Objekte: Vererbung Konzeptueller Hintergrund: Spezialisierung Modellierung mittels UML Vererben von Variablen Vererben von Methoden Überlagerung von Methoden Zugriff auf überlagerte Methoden

2 Klassenhierarchien konzeptueller Hintergrund: Generalisierung  Spezialisierung Spezifikation in UML (Unified Modeling Language): Abstraktion spezieller

3 Beispiel zu Klassenhierarchie spezieller StudentDozent Verwaltungs- angestellter Person Ordentlicher Student Gasthörer

4 Beispiel zu Klassenhierarchie 1-dimensionale Figur Geometrische Figur gerade Strecke 2-dimensionale Figur SplineKreis- bogen DreieckViereckRechteck Quadrat spezieller

5 Klassenhierarchien in Java Syntax: class Unterklasse extends Oberklasse {... } Beispiel:class Person {... } class Student extends Person {... }

6 Beispiel zu Klassenhierarchie StudentDozent Verwaltungs- angestellter Person Ordentlicher Student Gasthörer class Student extends Person {...} class Dozent extends Person {...} class Gasthörer extends Student {...}

7 Vererbung Eine Unterklasse erbt alle Eigenschaften ihrer Oberklassen è Eine Unterklasse erbt alle Variablen ihrer Oberklassen è Eine Unterklasse erbt alle Methoden ihrer Oberklassen

8 Vererbung von Attributen und Methoden class A { int aVar; void aMethode(){} } class B extends A{ int bVar; void bMethode(){} } class C extends B{ int cVar; void cMethode(){} } class d extends C{ int dVar; void dMethode(){} } aVar; aMethode() aVar; bVar; aMethode() bMethode() aVar; bVar; cVar; aMethode() bMethode() cMethode() aVar; bVar; cVar; dVar; aMethode() bMethode() cMethode() dMethode()

9 Variablen und Klassenhierarchie Eine Referenzvariable kann Objekte von Unterklassen aufnehmen Beispiel: class Polygon{ } class Rechteck extends Polygon{} Polygon p; Rechteck r = new Rechteck(); p = r; p = new Polygon(); r = p; //?

10 Überlagerung In Unterklasse und Oberklasse Methode mit gleichem Namen gleichen Parametern (Anzahl und Typ) Zweck: Unterklassen modellieren speziellere Objekte; Methoden der Oberklasse müssen häufig ebenfalls spezialisiert werden Welche Methode wird verwendet? im Normalfall die speziellste ("tiefste") Methode

11 Überlagerung: Beispiel class Polygon{... double fläche(){... }...} class Rechteck extends Polygon{......} void main.. { Rechteck r = new Rechteck(); double f = r.fläche(); //Methode aus Polygon }

12 Überlagerung: Beispiel class Polygon{... double fläche(){... }...} class Rechteck extends Polygon{... double fläche(){... }...} void main.. { Rechteck r = new Rechteck(); double f = r.fläche(); //Methode aus Rechteck }

13 Hausaufgabe 8 Ergänzen Sie die vorgestellten Klassen „Person“ und „Student“ um die Unterklassen „Dozent“ und „Verwaltungsangestellter“. Die Unterklasse „Dozent“ soll dabei noch weiter in „Professor“ und „Assistent“ unterschieden werden. Erzeugen Sie ein Objekt jeder Klasse.


Herunterladen ppt "Java-Kurs - 9. Übung Besprechung der Hausaufgabe Klassen und Objekte: Vererbung Konzeptueller Hintergrund: Spezialisierung Modellierung mittels UML Vererben."

Ähnliche Präsentationen


Google-Anzeigen