Wie abstrahiert man eine Singleton-Klasse?

So schreibe ich meine Singleton-Klassen.

public class MyClass
{
    /// <summary>
    /// Singleton
    /// </summary>
    private static MyClass instance;

    /// <summary>
    /// Singleton access.
    /// </summary>
    public static MyClass Instance
    {
        get
        {
            if (_instance == null)
            {
                _instance = new MyClass();
            }
            return _instance;
        }
    }

    private MyClass() { .... }
}
Wie erstelle ich ein wiederverwendbares Singleton-Muster?

Singleton-Muster stellen die folgenden Herausforderungen.

Der Konstruktor istprivate oderprotected.Eine Basisklasse kann keine geerbte Klasse instanziieren. So können Sie eine gemeinsame Zusammenfassung wiederverwendenMyAbstractSingletonClass.Es muss eine lokale schreibgeschützte Eigenschaft haben, um die Instanz abzurufen.Das Problem

Ich verwende dieses Muster für eine Reihe von Klassen und muss immer den gleichen Code schreiben. Wie kann ich etwas schreiben, das wiederverwendet wird, wenn ich einen Singleton benötige?

Antworten auf die Frage(9)

Ihre Antwort auf die Frage