Singleton: Unterschied zwischen den Versionen
Aus Das Sopra Wiki
Justus (Diskussion | Beiträge) K tippfehler |
Keine Bearbeitungszusammenfassung |
||
| (7 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
{{löschen}} | |||
Ein Singleton<ref name=wikiSongleton">[[wikipedia:de:Singleton_(Entwurfsmuster)|Wikipedia Artikel]] zu Singletons</ref> ist eine Klasse, die nur einmal instanziiert werden kann. Dies wir dadurch erreicht, daß der [[Konstruktor]] als [[Sichtbarkeit|privat]] markiert wird. | Ein Singleton<ref name=wikiSongleton">[[wikipedia:de:Singleton_(Entwurfsmuster)|Wikipedia Artikel]] zu Singletons</ref> ist eine Klasse, die nur einmal instanziiert werden kann. Dies wir dadurch erreicht, daß der [[Konstruktor]] als [[Sichtbarkeit|privat]] markiert wird. | ||
== Hintergrund == | == Hintergrund == | ||
Singletons werden bentzt, um globale Variablen in einer objektorienterten Weise darzustellen. Ein Beispiel dafür ist die Konfigurationsdatei<ref name="msdnSetting">http://msdn.microsoft.com/en-us/library/aa730869%28VS.80%29.aspx MSDN-Artikel zu Konfigurationseinstellungen</ref> in Visual Studio. Diese hat eine [[Property]] <tt>Default</tt> mit der man sich eine [[Referenz]] holen kann. Auf dieser wird dann gearbeitet. | Singletons werden bentzt, um globale Variablen in einer objektorienterten Weise darzustellen. Ein Beispiel dafür ist die [[Anwendungseinstellungen|Konfigurationsdatei]]<ref name="msdnSetting">http://msdn.microsoft.com/en-us/library/aa730869%28VS.80%29.aspx MSDN-Artikel zu Konfigurationseinstellungen</ref> in Visual Studio. Diese hat eine [[Property]] <tt>Default</tt> mit der man sich eine [[Referenz]] holen kann. Auf dieser wird dann gearbeitet. | ||
== Pattern == | == Pattern == | ||
[[Datei:Singleton.svg|rahmenlos|200x200px]] | |||
Durch den privaten [[Konstruktor]] wird kein [[Sichtbarkeit|öffentlicher]] Defaultkonstruktur generiert. Dadurch kann keine Instanz der [[Klasse]] von außen erzeigt werden. | Durch den privaten [[Konstruktor]] wird kein [[Sichtbarkeit|öffentlicher]] Defaultkonstruktur generiert. Dadurch kann keine Instanz der [[Klasse]] von außen erzeigt werden. | ||
| Zeile 37: | Zeile 17: | ||
{ | { | ||
public int EineVariable { get; set; } | public int EineVariable { get; set; } | ||
private Singleton m_Default; | private static Singleton m_Default; | ||
private Singleton() | private Singleton() | ||
| Zeile 43: | Zeile 23: | ||
} | } | ||
public static Singleton | public static Singleton Default | ||
{ | { | ||
get | get | ||
| Zeile 55: | Zeile 35: | ||
} | } | ||
} | } | ||
</source><noinclude> | </source><noinclude> | ||
[[Kategorie:Code-Beispiele]] | |||
== Referenzen == | == Referenzen == | ||
<references /> | <references /> | ||
[[Kategorie:Code-Beispiele]][[Kategorie:Begriffe]] | [[Kategorie:Code-Beispiele]][[Kategorie:Begriffe]][[Kategorie:CSharp]] | ||
</noinclude> | </noinclude> | ||
