03.11.2013 Aufrufe

SMALLTALK K1ex127-.45ex51275ahler/Bothner

SMALLTALK K1ex127-.45ex51275ahler/Bothner

SMALLTALK K1ex127-.45ex51275ahler/Bothner

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.

15.1 Prüfung von Direktverbindungen 305<br />

Suchverfahren<br />

Klassen−Variablen:<br />

PfadDic PfadSammler<br />

Station<br />

Instanz−Variablen:<br />

Klassen−Methoden:<br />

Instanz−Methoden:<br />

name<br />

direktVerbindung<br />

koordinaten<br />

erzeugenInstanzen<br />

eintragenName:<br />

eintragenDirektverbindung:<br />

bereitstellenDirektverbindung<br />

printOn:<br />

Abbildung 15.3: Die Klassen “Suchverfahren” und “Station”<br />

Auf dieser Basis richten wir die Stationen “Ham”, “Koe”, “Kar”, “Stu”, “Mai”,<br />

“Fra”, “Mue”, “Ful”, “Ber” und “Dre” als Instanzen der Klasse “Station” durch<br />

die folgende Anforderung ein:<br />

Station erzeugenInstanzen<br />

Somit haben wir z.B. für die globale Variable “Ham” die folgende Situation:<br />

Ham<br />

name ’Hamburg’<br />

direktVerbindung<br />

koordinaten nil<br />

(Koe Ful Ber)<br />

Abbildung 15.4: Attribute der Station “Ham”<br />

Auskunft über Direktverbindungen<br />

Zur Prüfung, ob eine Direktverbindung von einem Abfahrtsort zu einem Ankunftsort<br />

besteht, vereinbaren wir in der Klasse “Suchverfahren” die Instanz-Methode<br />

“direkt:” in der folgenden Form:<br />

direkt: ankunft<br />

(self bereitstellenDirektverbindung includes: ankunft)<br />

ifTrue: [Transcript cr;show:’Direktverbindung existiert’]<br />

ifFalse: [Transcript cr;show:’Direktverbindung existiert nicht’]<br />

Als Ergebnis der Anforderung<br />

Ham direkt: Koe

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!