![]() |
Почему нельзя обратится к объекту на сцене через this.parent из подкласса?
Здравствуйте.
Почему я не могу обратится к символу на сцене допустим с идентификатором clip_mc, скажем из спрайта созданного в классе документа, через this.parent. При попытках мне возвращается ошибка: "Обращение к возможно не определенному свойству clip_mc в...". Из самого документ класса (this.clip_mc) можно обращаться сколько угодно. Почему так? |
потому что только класс знает что в нем лежит clip_mc, обращайтесь через this.parent.getChildByName("clip_mc");
вообще так делать не стоит. |
Спасибо за информацию.
Цитата:
|
не должны дети знать своего родителя - нарушается принцип инкапсуляции и вообще ООП
|
с этим согласен, но с другой стороны не понятно а зачем ввели эти переменные?
|
При чем здесь инкапсуляции и ООП ? (если это было так, parent был бы закрытым членом DisplayObjectContainer)
По-моему, нарушается принцип событийной модели и всего лишь... |
parent оставили открытым в угоду не-тру ООП программистам)
Я, например, практически нигде-никогда не использовал parent - не было необходимости..(из этого, правда, совсем не следует, что я тру ООП-программист))) объект должен быть как чёрный ящик - ничего кроме себя не знать, а когда логика объекта завязана на его использование это не есть гуд. типа: "если меня положат на диван - то я сплю, а если меня положили в гроб, то я умер)))" а что за принцип событийной модели? |
Что-то типа:
http://www.flasher.ru/forum/showthread.php?t=129557 Цитата:
|
Цитата:
Цитата:
Цитата:
|
На самом деле если класс предоставляется только в 100% связке с другим классом и никаким другим, то parent использовать допустимо, хотя даже там лучше диспатчить событие.
Ещё момент - что события работают медленнее чем инлайновый вызов метода, так что в особо критичных местах можно и воткнуть parent, если критически нужна оптимизация. |
| Часовой пояс GMT +4, время: 03:52. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.