Recherche…


Remarques

Le modèle singleton a pour but de permettre à une seule instance d'une classe d'exister à un moment donné.

Empêcher l'instanciation directe via le constructeur est généralement évité en le rendant privé. Cependant, cela n'est pas possible dans As3 et, par conséquent, d'autres moyens de contrôler le nombre d'instances doivent être utilisés.

Singleton organiser via une instance privée

Dans cette approche, le single est accessible via la méthode statique:

Singleton.getInstance();

Pour appliquer une seule instance du singleton, une variable statique privée conserve l'instance, tandis que toute tentative supplémentaire d'instancier une instance est appliquée dans le constructeur.

package {

public class Singleton {

    /** Singleton instance */
    private static var _instance: Singleton = new Singleton();

    /** Return singleton instance. */
    public static function getInstance():Singleton {
        return _instance;
    }

    /** Constructor as singleton enforcer. */
    public function Singleton() {
        if (_instance)
            throw new Error("Singleton is a singleton and can only be accessed through Singleton.getInstance()");
    }

}
}


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow