220 likes | 332 Vues
Geoinformation I. Vorlesung 2 WS 2000/2001. Objektorientierte Konzepte/UML. Übersicht I. Idee von OO Kapselung Idee der Kapselung Abschließend noch einmal zur Beschreibung von Klassen Varianten der Notation UML: Beziehungen Beziehungen in UML - einführendes Beispiel
E N D
Geoinformation I Vorlesung 2 WS 2000/2001 Objektorientierte Konzepte/UML
Übersicht I • Idee von OO • Kapselung • Idee der Kapselung • Abschließend noch einmal zur Beschreibung von Klassen • Varianten der Notation • UML: Beziehungen • Beziehungen in UML - einführendes Beispiel • Bezeichnung von Beziehungen • Bezeichnung: Noch ein Beispiel • Multiplizität von Beziehungen Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Übersicht II • Mögliche Multiplizitäten • Wichtige Beziehungen I: Aggregation und Komposition • Eine Komposition flächenhafter Objekte • Wichtige Beziehungen (II):Generalisierung und Spezialisierung • Vererbung • Und was ist mit Methoden? • Übung: Anwendung der Generalisierung auf Land, Kreis, Gemeinde Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Idee von OO Sichtbarkeiteinschränken Abstraktion Länge Punkt Breite transform(..) x y Bezugssystem Kapselung Parametrisierung Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
weitere Zugriffsfunktionen setLänge getLänge setBreite getBreite transform() gety sety Kapselung ... Länge ... Punkt Breite x y Bezugssystem Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Unsichtbar Sichtbar
Idee der Kapselung • Attribute sind nur innerhalb der Klasse sichtbar • private • Notation: - • vor Änderung geschützt • Zugriff auf Attribute nur durch „öffentliche“ Operationen („Methoden“) • public • Notation + • Methoden sind für Konsistenzwahrung zuständig • Zusammenhang von • Länge/Breite und x/y Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Abschließend noch einmal zur Beschreibung von Klassen Typen undInitalwerte sind optional Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Varianten der Notation Klasse ohne Attribute und Operationen Attribute und Methoden nicht dargestellt Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Knoten begrenzen Kanten begrenzen UML: Beziehungen Flächen Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Beziehungen in UML - einführendes Beispiel Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Multiplizität Name Beziehungen in UML - einführendes Beispiel • jedes Grundstück hat mindestens drei Kanten • jede Kante begrenzt genau zwei Grundstücke Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Leserichtung Bezeichnung von Beziehungen RolleB Klasse A Klasse B Beziehungsname Rolle A Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
beschäftigt arbeitet für Bezeichnung: Noch ein Beispiel Firma Mitarbeiter arbeitnehmer arbeitgeber Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Multiplizität von Beziehungen Leserichtung • eine Kante begrenzt genau 2 Grundstücke • ein Grundstück hat mindestens 3 Kanten G1 G2 Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Mögliche Multiplizitäten: 1 genau eins 0..1 null oder eins 0..4 zwischen null und vier 3,7 drei oder sieben 0..* größer oder gleich null (Standard) * dto. 1..* größer oder gleich eins 0..3, 7, 9..* Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Aggregation: eine spezielle Assoziation, deren beteiligte Klassen eine Ganzes-Teile-Hierarchie darstellen Komposition: eine strenge Form der Aggregation, bei der die Teile vom Ganzen existenzabhängig sind Wichtige Beziehungen I: Aggregation und Komposition Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Eine Komposition flächenhafter Objekte Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Wichtige Beziehungen (II):Generalisierung und Spezialisierung • Die „GeomFigur“ ist ein allgemeineres Konzept als „Dreieck,“ „Kreis“ oder „Rechteck“ • GeomFigur ist Oberklasse,Dreieck, Kreis und Rechteck sind Unterklassen • Unterklassen erben die Attribute der Oberklasse und fügen ggf. weitere hinzu Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Vererbung • Generalisierung und Spezialisierung sind Abstraktionsprinzipien zur hierarchischen Strukturierung der Semantik eines Modells • Generalisierung und Spezialisierung beschreiben eine „taxonomische“ (systematische) Beziehungen zwischen einem allgemeinen und einem speziellen Element, wobei das speziellere weitere Eigenschaften hinzufügt und sich kompatibel zum allgemeinen verhält Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Und was ist mit Methoden? Methoden werden vererbt oder überschrieben Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2
Übung: Anwendung der Generalisierung auf Land, Kreis, Gemeinde Lutz Plümer - Geoinformation - 1./5. Semester - WS 00/01 - Vorlesung 2