homeSoftwaredesign Softwaredesign: Singleton Prof. Dr. Uwe Schmidt FH Wedel

Singleton

weiter

weiter

Singleton

Klassifizierung
objektbasiertes Erzeugungsmuster
weiter
Zweck
Absicherung, dass von einer Klasse genau ein Objekt erzeugt wird und es einen globalen Zugriffspunkt auf das Objekt gibt
weiter
Motivation
eine Fabrik für Objekte (Abstrakte Fabrik) darf nur einmal existieren
weiter
Beispiel
EmptyTree-Klasse für die Darstellung des leeren Baums (aus Strukturmuster Kompositum).
weiter
Anwendbarkeit
genau ein Objekt soll erzeugt werden können und an einer Stelle zugreifbar sein
das Exemplar soll durch Unterklassenbildung erweiterbar sein, ohne Klientencode zu modifizieren
weiter
Struktur
Strukturdiagramm
weiter
Teilnehmer
  Singleton
enthält globale Referenz auf ein Objekt und Zugriffsfunktionen auf die Referenz und auf die Daten
weiter
Konsequenzen
Zugriffskontrolle auf das Exemplar
eingeschränkter Namensraum
globale Variable im Namensraum der Klasse
durch Vererbung Funktionalität überschreibbar
weiter
Implementierungs- Beispiele
einfachste Java-Implementierung
keine Modifikation durch Vererbung möglich
eine etwas trickreiche Implementierung, die Modifikation durch Vererbung zulässt
dynamisches Laden und Erzeugen eines Singletons
besonders für eine Abstrakte Fabrik geeignet
weiter
verwandte Muster
weiter
weiter
sind typische Kandidaten für Singleton-Implementierungen
weiter

Letzte Änderung: 17.06.2014
© Prof. Dr. Uwe Schmidt
Prof. Dr. Uwe Schmidt FH Wedel