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

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

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

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
По умолчанию Класс задает рид-онли свойство другому классу?

Как вы решаете такую проблему? Скажем, существуют 2 класса, назовем их Parent и Child. Parent может создавать Child'ов и после создания должен задать им свойство parent со ссылкой на самого себя, доступное только для чтения.

Пока мои варианты только такие:
диспатчить ребенку событие о том, что он добавлен в список детей родителя.
- недостатки: Если обработчик этого события оставить протектед, его можно будет переписать в детях наследующихся от Child'a - т.е. не надежно. Если обработчик сделать приватным, то получится одна дополнительная функция

создать у ребенка интернал метод, который будет задавать все нужные свойства.
- недостатки: Не знаю, как-то некрасиво да и не супер надежно в смысле если в дальнейшем наследоваться от Child'a.

статическое свойство у родителя, через которое можно получить ссылку на родителя создавшего этого конкретного ребенка...
- недостаки: Ну выглядит еще хуже, чем оба предыдущих варианта... как бы всерьез я это не рассматриваю, просто добавил потому что технически такое тоже возможно.

Вобщем, интересует ваше мнение, что вы делаете в такой ситуации?
__________________
Hell is the possibility of sanity

Старый 01.06.2009, 17:15
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 2  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
первое
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 01.06.2009, 17:29
alekslitvinenk вне форума Посмотреть профиль Отправить личное сообщение для alekslitvinenk Посетить домашнюю страницу alekslitvinenk Найти все сообщения от alekslitvinenk
  № 3  
Ответить с цитированием
alekslitvinenk
 
Аватар для alekslitvinenk

Регистрация: Oct 2005
Адрес: Москва
Сообщений: 491
Отправить сообщение для alekslitvinenk с помощью ICQ Отправить сообщение для alekslitvinenk с помощью AIM Отправить сообщение для alekslitvinenk с помощью Skype™
Первый способ мне кажется наиболее приемлемым.
Защитить обработчик событий от изменений на мой взгляд можно если сделать этот обработчик публичным методом другого финального интернал класса, например IntenalEventController.
P.S: не уверен, конечно, что это правильно.


Последний раз редактировалось alekslitvinenk; 01.06.2009 в 17:31.
Старый 01.06.2009, 17:46
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 4  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
alekslitvinenk. Кхм. Тупо не понял Вашей мысли.

Этот велисипед уже изобретен. Имя ему DisplayList.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 01.06.2009, 17:50
alekslitvinenk вне форума Посмотреть профиль Отправить личное сообщение для alekslitvinenk Посетить домашнюю страницу alekslitvinenk Найти все сообщения от alekslitvinenk
  № 5  
Ответить с цитированием
alekslitvinenk
 
Аватар для alekslitvinenk

Регистрация: Oct 2005
Адрес: Москва
Сообщений: 491
Отправить сообщение для alekslitvinenk с помощью ICQ Отправить сообщение для alekslitvinenk с помощью AIM Отправить сообщение для alekslitvinenk с помощью Skype™
Скажите, при чем тут вобще DisplayList ?
Отношения родитель - ребенок могут присутствовать в чем угодно, а не только в иерархии отображаемых объектов

Старый 01.06.2009, 17:53
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 6  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Ну так я про то же самое. Пускай это будет AnIerarchyList.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 01.06.2009, 18:01
alekslitvinenk вне форума Посмотреть профиль Отправить личное сообщение для alekslitvinenk Посетить домашнюю страницу alekslitvinenk Найти все сообщения от alekslitvinenk
  № 7  
Ответить с цитированием
alekslitvinenk
 
Аватар для alekslitvinenk

Регистрация: Oct 2005
Адрес: Москва
Сообщений: 491
Отправить сообщение для alekslitvinenk с помощью ICQ Отправить сообщение для alekslitvinenk с помощью AIM Отправить сообщение для alekslitvinenk с помощью Skype™
Цитата:
Сообщение от dimarik Посмотреть сообщение
Ну так я про то же самое. Пускай это будет AnIerarchyList.
тогда уж HierarchyList

Старый 01.06.2009, 18:06
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 8  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Как Вам будет угодно =)

"сделать этот обработчик публичным методом другого финального интернал класса".
Покажите лучше это чудо.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 01.06.2009, 18:09
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 9  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
internal лучше. надёжнее и быстрее

Старый 01.06.2009, 18:36
alekslitvinenk вне форума Посмотреть профиль Отправить личное сообщение для alekslitvinenk Посетить домашнюю страницу alekslitvinenk Найти все сообщения от alekslitvinenk
  № 10  
Ответить с цитированием
alekslitvinenk
 
Аватар для alekslitvinenk

Регистрация: Oct 2005
Адрес: Москва
Сообщений: 491
Отправить сообщение для alekslitvinenk с помощью ICQ Отправить сообщение для alekslitvinenk с помощью AIM Отправить сообщение для alekslitvinenk с помощью Skype™
Цитата:
Покажите лучше это чудо
Показать что ? Как объявляется финальный интернал класс ?
Код AS3:
package{
	internal final class InternalEventController{
.....................................................................
            }
}

Создать новую тему Ответ Часовой пояс GMT +4, время: 22:16.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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