29.01.2014 Aufrufe

Script Java

Script Java

Script Java

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

2.3 Vererbung, Konstruktor und Redefinition<br />

Aus Abbildung 2-7 kann man entnehmen, dass einige der im Programm vorkommenden<br />

Klassenbibliotheksmethoden wie beispielsweise setLayout(), setSize(),<br />

setVisible() nicht in der Klasse Frame deklariert sind. Bei den soeben erwähnten<br />

Methoden handelt es sich aber dennoch um Methoden, die an UserFrame und Card<br />

vererbt werden. Wie dies möglich ist, zeigt Abbildung 2-8.<br />

Abbildung 2-8 verdeutlicht, dass Frame wiederum eine Unterklasse ist, nämlich eine<br />

direkte Unterklasse von Window und eine indirekte von Container, Component und<br />

Object. Als Unterklasse erbt Frame sämtliche Attribute und Methoden von ihren<br />

Oberklassen, die sie dann wiederum an ihre Unterklassen weitervererbt: „Ererbtes“ kann<br />

also „weitervererbt“ werden.<br />

In Abschnitt 2.1.1 wurde ein Frame auch als Container bzw. als Component bezeichnet.<br />

Dies sollte nun aufgrund der in der Abbildung veranschaulichten Vererbungshierarchie<br />

klar sein. Aufgrund der Vererbung ist nämlich eine Instanz immer auch eine Instanz einer<br />

Oberklasse. Eine Instanz eines Frame ist also beispielsweise eine Instanz von Window,<br />

aber auch eine Instanz von Container, Component und Object. Die umgekehrte Aussage<br />

gilt aber nicht: eine Instanz einer Oberklasse ist nicht auch automatisch Instanz deren<br />

Unterklassen.<br />

Die Klasse Object 1 ist die Wurzel der Klassenbibliothekshierachie. Sie bildet die oberste<br />

Hierarchiestufe, von welcher schlussendlich alle Klassen erben. Falls eine durch den<br />

Programmierer deklarierte Klasse wie beispielsweise TestProg keine Vererbungsangabe<br />

macht, ist sie ohne explizite Erwähnung eine direkte Unterklasse von Object.<br />

1 Die Namensgebung ist leider sehr unglücklich. Object hat nichts mit einer Instanz einer Klasse, also<br />

einem Objekt, gemeinsam: Object ist eine Klasse.<br />

43

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!