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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.10.2012, 14:37
AlexLucas вне форума Посмотреть профиль Отправить личное сообщение для AlexLucas Найти все сообщения от AlexLucas
  № 21  
Ответить с цитированием
AlexLucas
[+1 05.11.12]
 
Аватар для AlexLucas

Регистрация: Feb 2011
Сообщений: 431
Цитата:
Сообщение от gloomyBrain Посмотреть сообщение
Хотя бы потому, что пакет - это часть имени класса или интерфейса. Имя файла - это краткое имя класса. Пакет (а значит и путь до) + краткое имя = полное имя класса/интерфейса. И для FlashPlayer'а имеет значение именно оно. Это как паспортные данные. Вас же не удивляет, что может быть 2 Василия, и при этом они разные люди. Или две Марии. Фактически у каждого из них есть уникальный идентификатор: ФИО + номер/серия паспорта. Так же и для классов/интерфейсов - есть краткое имя, есть полное. Интерфейсы или классы одинаковы, если их полные имена совпадают.
Вы правы, и я понимаю что это имеет значение, но я имел в виду именно данную ситуацию - может быть, скажем, Даша,она умеет петь() и рисовать(), и когда я проверяю (а у меня есть доступ к методам Даши) если Даша, которую я "загружаю" умеет петь() и рисовать(), мне возвращает false. И мне в принципе не важно с какого она города, и даже как её зовут, я смогу попросить её рассказатьОСебе() например

Цитата:
Сообщение от gloomyBrain Посмотреть сообщение
Не должен. Так просто проще всего проверить, а вообще если вы сделаете 2 проекта и сохраните в них одинаковую структуру пакетов, то получите те же классы/интерфейсы (то есть при одинаковых сигнатурах методов, плеер будет считать их одинаковыми).


Правильно выбрать ApplicationDomain для загрузки
Посмотрите пожалуйста прикреплённые на предыдущей странице 2 проекта (1 архив), они с одинаковой структурой, вроде сделал как вы описали.


Последний раз редактировалось AlexLucas; 23.10.2012 в 16:19.
Старый 23.10.2012, 14:50
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 22  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

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

Старый 24.10.2012, 13:40
AlexLucas вне форума Посмотреть профиль Отправить личное сообщение для AlexLucas Найти все сообщения от AlexLucas
  № 23  
Ответить с цитированием
AlexLucas
[+1 05.11.12]
 
Аватар для AlexLucas

Регистрация: Feb 2011
Сообщений: 431
Попробовал пошаманить, и заметил, что если основной проект загружает свфку модуля с папки в которой он был скомпилен, то получается кастовать к интерфейсу, а если передвинуть этот же свф в другую папку, то не получается :

Код:
|..
|module
|-bin
|--Module.swf
|-Module.mxml
|-ITest.as
|Module.swf
|Main.mxml
|ITest.as
Если Module.mxml имплементит module/ITest.as и изначально компилится и выдаёт module/bin/Module.swf, и Main.mxml подгружает module/bin/Module.swf, то подгружаемый обхект кастуется к ITest нормально (Main.mxml использует ITest что в корне), а если скомпилить тот же bin/Module.swf, и просто перенести его в корень к Main.mxml, то не кастуется.
А почему, не знаю.

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

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

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

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

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


 


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


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