Показать сообщение отдельно
Старый 01.04.2008, 10:37
zinchencko вне форума Посмотреть профиль Отправить личное сообщение для zinchencko Найти все сообщения от zinchencko
  № 1  
Ответить с цитированием
zinchencko

Регистрация: Jan 2008
Сообщений: 23
Отправить сообщение для zinchencko с помощью ICQ Отправить сообщение для zinchencko с помощью Skype™
По умолчанию Запуск Singleton'а

Уже много раз обсуждалось, но обсуждался сам сингелтон. Объясните пожалуста как его запускать?

Я брал второй синглетон с http://yarovoy.com/2007/10/24/single...ctionscript_3/

Пишем:
Код:
package {

      public class Singleton
      {
           private static var __instance:Singleton;
           private static var __allowInstantiation:Boolean = false;

           public static function get instance():Singleton
           {
			
           if(!__instance)
           {
				trace("Запустили");
                      // Разрешаем создание экземпляра класса.
                       __allowInstantiation = true;
                      // Создаем экземпляр.
                      __instance = new Singleton();
                       // Запрещаем создание экземпляров.
                      __allowInstantiation = false;
                  }
             return __instance;
             }

		public function dosome()
		{
			trace("Function loanch");
			
		}

            public function Singleton()
            {
                   if(!__allowInstantiation)
                           throw new Error("Вы не можете создавать экземпляры класса при помощи конструктора. Для доступа к экземпляру используйте Singleton.instance.");
             }
     }
}
Создаю синглетон в этой функции:
Код:
package
{
	import flash.display.*;
	import flash.events.*;
	import flash.text.*;
	import flash.xml.*;
	import Singleton;


	public class Main extends Sprite
	{		

		public function Main()
		{
			 var singl : Singleton = Singleton.instance();			
			
		}
		
	}
}

Пишет ошибку "1195: Attempted access of inaccessible method instance through a reference with static type Class."

Объясните пожалуйста как его запустить? и как обращаться потом к функции "dosome".


Последний раз редактировалось zinchencko; 01.04.2008 в 10:44.