ActionScript 3
Шаблон Singleton
Поиск…
замечания
Шаблон singleton имеет целью разрешить существование только одного экземпляра класса в любой момент времени.
Предотвращение прямого создания экземпляра через конструктор обычно предотвращается, делая его закрытым. Однако это невозможно в As3, и поэтому необходимо использовать другие способы управления количеством экземпляров.
Синглтон-исполнитель через частную инстанцию
В этом подходе доступ к одному осуществляется через статический метод:
Singleton.getInstance();
Чтобы принудительно применять только один экземпляр синглтона, частная статическая переменная сохраняет экземпляр, а любые дополнительные попытки создать экземпляр экземпляра выполняются внутри конструктора.
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
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow