• Keine Ergebnisse gefunden

Klassifikation Vererbung

N/A
N/A
Protected

Academic year: 2022

Aktie "Klassifikation Vererbung"

Copied!
4
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Page 1

Vererbung

Klassifikation

Dinge der realen Welt lassen sich oft klassifizieren

z. B. Artikel eines Web- Shops

Man beachte

• Ein eBook hat alle Eigenschaften eines Buchs; zusätzlich hat es ...

• Ein Buch hat alle Eigenschaften eines Artikels; zusätzlich hat es ...

Vererbung

• CD und mp3File lassen sich gleichermaßen als Audio behandeln

Buch, Audio und Kamera lassen sich gleichermaßen als Artikel behandeln Artikel

Buch

HardCover SoftCover eBook

Kamera Audio

CD mp3-File Digital Analog

(2)

Page 2

Vererbung

class Article { int code;

int price;

bool available() {...}

void print() {...}

Article( int c, int p) {...}

}

Oberklasse Basisklasse

class Book extends Article { String author;

String title;

void print() {...}

Book( int c, int p,

String a, String t) {...}

}

Unterklasse

erbt: code, price, available, print ergänzt: author, title, Konstruktor überschreibt: print

Article code price available() print() Article( c, p)

Book author title print()

Book( c, p, a, t)

Wenn keine Oberklasse angegeben wird, ist sie Object

Überschreiben von Methoden

Book book = new Book( code, price, author, title);

erzeugt Book- Objekt Article- Konstruktor Book- Konstruktor

Benutzung

class Article { ...

}

void print() {

Out. print( code + " " + price + " ");

}

Article( int c, int p) { code = c; price = p;

}

class Bookextends Article{ ...

}

void print() { super. print();

Out. print( author + " " + title+ " ");

}

Book( int c, int p, String a, String t) { super( c, p);

author = a; title = t;

}

book. print();

print aus Article print aus Book

Ausgabe: code price author title

book code

price author title

(3)

Page 3

Klassenhierarchien

Article code price available() print()

Book author Title print()

Audio songs print()

Camera supplier print()

mp3-File mbyte print() CD

tracks print() Jedes Buch ist ein Artikel

Aber: nicht jeder Artikel ist ein Buch

Kompatibilität zwischen Klassen

Unterklassen sind Spezialisierungen ihrer Oberklassen

Article a = new Book( code, price, author, title);

nur Article- Felder sind über a zugreifbar a.code

a.price

a code

price author title

Book- Objekte können Article- Variablen zugewiesen werden

b code

price author title

if (a instanceofBook) // Laufzeittyptest

Book b = (Book) a; // Typumwandlung mit Laufzeittypprüfung

alle Book- Felder sind über b zugreifbar b.code

b.price b.author b.title

(4)

Page 4

void printArticles() {

for (int i = 0; i < a. length; i++) { if (a[i].available()) {

a[i].print();

} } }

Alle Varianten können als Artikel behandelt werden

Dynamische Bindung

Dynamische Bindung

a.print() ruft die print- Methode des Objekts auf, auf das a gerade zeigt Heterogene Datenstruktur

Article[] a;

Book CD Book CD Camera

ruft je nach Artikelart das print() aus Book, CD oder Camera auf

ruft geerbtes available() aus Article auf

Referenzen

ÄHNLICHE DOKUMENTE

(1) In einem Zeitraum von insgesamt zwei bis vier Monaten sind schwerpunktmäßig die Fertigkeiten, Kenntnisse und Fähigkeiten der Berufsbildpositionen. 1.1 Stellung, Rechtsform

inhalt Kontakt Titelporträt Verlag Themen/Termine Preise/Formate Gruene Jobs Auflage/Verbreitung Crossmedia Wichtiges...

(10) Auf Antrag des Prüflings ist die Prüfung in einem der mit schlechter als „ausreichend“ bewerteten Prüfungsbereiche nach Absatz 2 Nummer 2 bis 5 durch eine mündliche Prüfung

(1) In einem Zeitraum von insgesamt zwei bis vier Monaten sind schwerpunktmäßig die Fertigkeiten, Kenntnisse und Fähigkeiten der Berufsbildpositionen. 1.1   Stellung, Rechtsform

- Den Ausgangspunkt des Lernens bilden Handlungen, möglichst selbst ausgeführt oder aber gedanklich nachvollzogen (Lernen durch Handeln). - Handlungen müssen von den

Das Unterrichtsangebot der Berufsschule richtet sich an Jugendliche und Erwachsene, die sich nach Vorbildung, kulturellem Hintergrund und Erfahrungen aus den

Informatikgrundlagen für Humanmedizin – Listen, Strings, Schleifen Herbst 2021 Böckenhauer, Komm 1 / 21... Die

Informatikgrundlagen für Humanmedizin – Listen, Strings, Schleifen Herbst 2021 Böckenhauer, Komm 1 /