Синглтон класс в Flex
Я знаю, что синглтон-класс не поддерживается в Flex. Потому что он не имеет доступа к частному конструктору.
Но я хочу сделать класс синглтон. Пожалуйста, кто-нибудь может объяснить с примером.
Спасибо рави
1 ответ
Решение
Синглтон - это класс, из которого будет создан только один экземпляр. Этот экземпляр будет использоваться всем другим кодом в программе.
Синглтон в самом строгом смысле не поддерживается в ActionScript, поскольку конструктор нельзя пометить как частный. Следовательно, дополнительные экземпляры класса могут быть созданы в другом месте в программе. Используя следующий трюк, вы можете убедиться, что конструктор вызывается только самим синглтон-классом:
package {
public final class Singleton {
private static var instance:Singleton = new Singleton();
public function Singleton() {
if( Singleton.instance ) {
throw new Error(
"Singleton and can only be accessed through Singleton.getInstance()" );
}
}
public static function getInstance():Singleton {
return Singleton.instance;
}
}
}