10.07.2015 Aufrufe

2 Grundkonzepte objektbasierter Datenbanksysteme - Public.fh ...

2 Grundkonzepte objektbasierter Datenbanksysteme - Public.fh ...

2 Grundkonzepte objektbasierter Datenbanksysteme - Public.fh ...

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.

FachhochschuleBraunschweig/WolfenbüttelDipl.-Inform. Holger MärtensObjektbasierte DatenbankenSS 2008Seite13• Gleichheit: gleicher Zustand (Attributwerte) Zuweisungssemantik: referenzbasiert vs. wertebasiert tiefes vs. flaches Kopieren (deep copy, shallow copy)• Kapselung (encapsulation; information hiding)o Zustand eines Objektes für andere Objekte i.a. nicht sichtbar (strikteKapselung) und nur durch Methoden zu lesen oder zu ändern→ Attribute sind "privat"o vgl. abstrakte Datentypeno Kapselung kann eingeschränkt werden (z.B. lesende Zugriffe erlaubt)oder ganz aufgehoben werden ("öffentliche" Attribute)2.1.2 Klassen• Klassen [Geppert, Abb. 2-4, 2-5]o fassen "ähnliche" Objekte (mit gleichem Verhalten und gleichstrukturierten Zuständen) zusammeno Klassendefinition legt somit mögliche Zustände (Attribute undWertebereiche) und Verhalten ihrer Objekte festo Objekte sind Instanzen ihrer Klasse; Erzeugung eines neuen Objektsinstantiiert die Klasseo Intension einer Klasse = Menge ihrer möglichen Instanzen gemäßKlassendefinitiono Extension einer Klasse = Menge der existierenden Instanzen zu einemZeitpunkto Konstruktoren erzeugen neue Instanzen und inititalisieren ihren Zustand• Klassenattribute (statische Attribute)o stets gleich für alle Elemente einer Klasseo aber veränderbar (z.B. Zinssatz für alle Sparkonten einer Bank)o nicht an bestimmte Instanz gebunden• Klassenmethoden (statische Methoden)o analog zu Klassenattributeno Konstruktor ist spezielle Klassenmethode2.1.3 Vererbung• Vererbung (inheritance) [Geppert, Abb. 2-6, 2-8]o Objekte können anderen ähnlich sein, aber z.B. gewisse Einschränkungenoder zusätzliche Eigenschaften aufweiseno Klasse solcher Objekte ist Spezialisierung der allgemeineren Klasse underbt all ihre Eigenschaften (Struktur und Verhalten)Vererbung von Superklasse (Oberklasse) auf Subklasse(Unterklasse)o Substituierbarkeit: Instanzen der Subklasse können alle Operationenausführen, die für Superklasse definiert sind (+ zusätzliche), und sindüberall einsetzbar, wo Instanzen der Oberklasse verlangt sind Folgerung: Elemente der Superklasse können heterogen sein!o Klassifikation: Instanzen der Superklasse werden durch Subklassen inKategorien eingeteilt "feinster Typ" eines Objektes = am weitesten abgeleitete Klasse C,der das Objekt angehört (d.h. es ist nicht Instanz einer Subklassevon C)• auch: feinste Klasse, dynamischer Typ (most specific type,most derived class, dynamic type/class)o Spezialisierung: Subklassen können zusätzliche Eigenschaften definieren

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!