2017-09-29 6 views

Antwort

2

Wenn ein Singleton eine Unterklasse hatte, dann scheint es wahrscheinlich, dass er den Zweck eines Singletons verletzen würde. Wie kann es nur einen geben, wenn es Eltern und Kinder gibt?

Die eine Zeit, die ich Vererbung mit einem Singleton verwendet habe, ist, wenn der Elternteil eine abstrakte Klasse ist, die sehr allgemeine Funktionalität für mehrere Singletons bietet. Jede untergeordnete Klasse ist selbst ein Singleton mit einer Instanz und die übergeordnete Entität ist eine abstrakte Instanz mit null Instanzen.

+0

Dank erhalten werden. Ich frage nach der Definition in dem Buch, die es ermöglicht, eine Singleton-Klasse unterzuklassifizieren. – Ben

+0

@Ben Ich verstehe, nur meine Erfahrungen zu teilen. –

0

Es ist kein Problem, eine Singleton-Klasse kann eine Unterklasse haben.

class singleClass { 
    ... 
    getSingleton() // you can get singleton obj by this structure func 
    ... 
} 

class subClass : singleClass { 
    ... 
    override getSingleton() // you can get sub singleton obj by this structure func 
    subClass() // new obj 
    ... 
} 

Es wird empfohlen, die gleiche Schnittstelle der einzelnen Instanz

+0

Danke. Muss eine Unterklasse einer Singleton-Klasse eine Singleton-Klasse sein? Kann eine Singleton-Klasse eine beliebige Anzahl von Unterklassen haben? – Ben

Verwandte Themen