Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 30.01.2017, 08:51
zackscript вне форума Посмотреть профиль Отправить личное сообщение для zackscript Найти все сообщения от zackscript
  № 1  
Ответить с цитированием
zackscript
 
Аватар для zackscript

Регистрация: Jan 2014
Сообщений: 181
Отправить сообщение для zackscript с помощью Skype™
Цитата:
А какой смысл делать Main синглтоном вообще?
Это ради эксперимента , в действительности так не будет

Добавлено через 12 минут
Цитата:
а то я думал что только один объект создается и он является нечто особенным
Не-нет Вы меня не так поняли , я согласен что строго нужно создавать один экземпляр , просто я думал в singleton'е нельзя создавать ( более одного экземпляра ) и других классов.

Добавлено через 1 час 35 минут
Прошу помочь ибо я в логике в своем коде запутался.
По идее должен появится текст ну вот в чем подвох я не пойму, хотя и ошибок то нет.

Главный класс
Код AS3:
package
{
	import flash.display.Sprite;
	import flash.events.Event;
	import OtherClassA;
	import OtherClassB;
 
	// author zackscript
 
	public class Main extends Sprite 
	{
		private var _classA:OtherClassA;
 
		public function Main() 
		{
			stage ? init() : addEventListener(Event.ADDED_TO_STAGE, init);	
		}
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
 
			this._classA = new OtherClassA ()
			addChild (this._classA)
		}
	}
}
Класс А
Код AS3:
package 
{
	import flash.display.Sprite;
	import OtherClassB;
 
	public class OtherClassA extends Sprite 
	{
 
		public function OtherClassA () 
		{
		   super();
 
		   OtherClassB.instance.message ();  
		}	
	}
}
Класс B

Код AS3:
package 
{
    import flash.display.Sprite;
	import flash.text.TextField;
 
    public class OtherClassB extends Sprite 
	{
        private static var _instance:OtherClassB
 
		private var _txt:TextField;
 
        public function OtherClassB() 
		{
            super();
 
            if (_instance) throw new Error("Class is singleton!");
        }
		public function message ():void
		{
			_txt = new TextField ();
			_txt.text = "Hello Main"
			_txt.x = 400;
			_txt.y = 300;
			addChild (_txt);
		}
        static public function get instance():OtherClassB
		{
            if (!_instance) _instance = new OtherClassB ();
            return _instance;
        }
    }
}


Последний раз редактировалось zackscript; 30.01.2017 в 12:03.
Создать новую тему Ответ Часовой пояс GMT +4, время: 15:37.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 15:37.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.