03.11.2013 Aufrufe

SMALLTALK K1ex127-.45ex51275ahler/Bothner

SMALLTALK K1ex127-.45ex51275ahler/Bothner

SMALLTALK K1ex127-.45ex51275ahler/Bothner

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

78 5 Spezialisierung von Lösungsplänen<br />

Bei der Vereinbarung der Klasse “WerteErfassung” haben wir diese Klasse – unter<br />

Einsatz des Werkzeugs “WindowBuilder Pro/V” – der Basis-Klasse “ViewManager”<br />

untergeordnet, weil die Methoden dieser Klasse und ihre Instanz-Variablen benötigt<br />

werden, um einen Lösungsplan für die dialog-orientierte Erfassung innerhalb unseres<br />

Erfassungsfensters entwickeln zu können.<br />

Dadurch erbt die Klasse “WerteErfassung” alle Attribute, die in der Klasse “View-<br />

Manager” durch Instanz-Variablen festgelegt sind.<br />

ˆ Dies ist die Erklärung dafür, daß wir zu keinem Zeitpunkt Aussagen über<br />

Verwaltungs-Behälter machen mußten, in denen fenster-spezifische Angaben<br />

enthalten sind. Durch die Vererbung wird bewirkt, daß jede Instanz von “WerteErfassung”<br />

über sämtliche Instanz-Variablen verfügt, in denen die Daten für<br />

den Aufbau und die Anzeige von Erfassungsfenstern festgelegt sind.<br />

5.2 Klassen-Hierarchie<br />

Das Prinzip der Vererbung wirkt nicht nur einstufig im Hinblick auf die unmittelbare<br />

Unterordnung, sondern über alle Stufen sämtlich einander untergeordneter Klassen.<br />

Von entscheidender Bedeutung für die Programmierung in <strong>SMALLTALK</strong> ist der<br />

folgende Sachverhalt:<br />

ˆ Alle Klassen, die vom <strong>SMALLTALK</strong>-System verwaltet werden, sind hierarchisch<br />

geordnet. Dies bedeutet, daß eine Klasse im Rahmen einer Klassen-<br />

Hierarchie mehr als einer Klasse untergeordnet sein kann. Sie besitzt jedoch<br />

immer genau eine direkte Oberklasse.<br />

Hinweis: Diese Art von Vererbung wird als Einfachvererbung bezeichnet.<br />

ˆ Die Vererbung ist über alle Hierarchiestufen wirksam, so daß jede Klasse des<br />

<strong>SMALLTALK</strong>-Systems sämtliche Attribute aller ihr hierarchisch übergeordneter<br />

Klassen erbt und jede Instanz einer Klasse Kenntnis von allen Methoden<br />

besitzt, die in hierarchisch übergeordneten Klassen vereinbart sind.<br />

Daher verkörpert jede Instanz einer Klasse die Gesamtheit aller Instanz-<br />

Variablen, die in dieser und sämtlichen ihr hierarchisch übergeordneten Klassen<br />

festgelegt sind. Ferner kann jede Instanz einer Klasse sämtliche Methoden<br />

ausführen, die in diesen Klassen und in hierarchisch übergeordneten Klassen<br />

vereinbart sind.<br />

Hinweis: Im Hinblick auf die Klassen-Hierarchie sind die Instanzen immer denjenigen<br />

Klassen zugeordnet, aus denen sie instanziiert wurden. Eine Veränderung dieser<br />

Zuordnung ist nicht möglich.<br />

Attribute sollten in einer Hierarchie “so hoch wie möglich” angesiedelt werden. Dadurch<br />

können redundante Vereinbarungen in verschiedenen, einander untergeordneten<br />

Klassen vermieden werden.<br />

Sind z.B. die Klassen “K1”, “K2” bis “Kn” der Klasse “K0” hierarchisch untergeordnet,<br />

so können wir dies folgendermaßen darstellen:

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!