Heim >Backend-Entwicklung >PHP-Tutorial >Leicht verständliches PHP-Designmuster-Singleton-Muster

Leicht verständliches PHP-Designmuster-Singleton-Muster

韦小宝
韦小宝Original
2017-11-14 13:02:151539Durchsuche

Der Singleton-Modus stellt sicher, dass eine bestimmte Klasse nur eine Instanz hat, sich selbst instanziiert und diese Instanz dem gesamten System zur Verfügung stellt. Diese Klasse wird Singleton-Klasse genannt, Das Singleton-Muster stellt globale Zugriffsmethoden bereit. Das Singleton-Muster ist ein Objekterstellungsmuster

Was ist die Motivation für die Verwendung des Singleton-Musters?

Antwort: Um Systemressourcen zu sparen, muss manchmal sichergestellt werden, dass nur eine Instanz einer bestimmten Klasse im System vorhanden ist. Nachdem diese eindeutige Instanz erfolgreich erstellt wurde, können wir keine weitere erstellen Objekt desselben Typs Alle Operationen können nur auf dieser eindeutigen Instanz basieren. Um die Einzigartigkeit des Objekts sicherzustellen

Klassendiagrammübersicht

Leicht verständliches PHP-Designmuster-Singleton-Muster

Codeübersicht

final class TaskManager
{
    private static $tm = null;
    private function construct()
    {
    }
    public static function getInstance()
    {
        if (static::$tm == null) {
            static::$tm = new TaskManager();
        }
        return static::$tm;
    }
}
// final 让这个类不能被继承、让方法不能被修改 static 设置静态方法或属性的关键字

Als Entwurfsmuster mit klaren Zielen, einfacher Struktur und leicht verständlich, wird das Singleton-Muster recht häufig in der Softwareentwicklung verwendet und ist in vielen Anwendungssoftware und Frameworks weit verbreitet

Verwandte Empfehlungen:

Welche Rolle spielt das PHP-Designmuster-Fabrikmuster?

Der Unterschied zwischen Factory-Modus und Singleton-Modus in PHP-Entwurfsmustern

Analyse des Singleton-Musters im PHP-Entwurfsmuster

Das obige ist der detaillierte Inhalt vonLeicht verständliches PHP-Designmuster-Singleton-Muster. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn