Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Общие вопросы о Flash (не затрагивающие ActionScript) (http://www.flasher.ru/forum/forumdisplay.php?f=60)
-   -   private var в extends MovieClip (http://www.flasher.ru/forum/showthread.php?t=92070)

Timerlan 14.02.2007 20:49

private var в extends MovieClip
 
Допустим есть клас myClass extends MovieClip
в нем есть private var a

Вопрос: почему я могу обратиться к переменной а и записать в неё значение из любого другого места синтаксисом myClassExamplare.a="ляля"?

etc 14.02.2007 22:43

Потому что AS2 не существует и проверка обращений к переменным есть только на стадии компиляции, что можно легко обойти.

Timerlan 14.02.2007 23:22

что-то я не понял.
зачем же тогда вообще есть ключевое слово private для переменных в классе если они все равно остаются публичными?
и как это: AS2 не существует?:)

etc 14.02.2007 23:49

Потому что AS2 существует только для программера. А в выходном файле обычный AS1 фактически и никакой там типизации нет.
Впрочем, приложите исходник, посмотрим, что там не так.

Timerlan 15.02.2007 01:11

да я вроде понял.
Я же свой объект этого класса создаю на сцене стандартным методом attachMovie и обращаюсь к нему как к мувику..а поскольку мувик динамический класс, он вместо обьявленной мной приватной а создает новую. И в дальнейшем используется именно она.

etc 15.02.2007 02:41

В таком случае нужно использовать кастинг. var mc:AnyClass = AnyClass(this.attachMovie(…)). Тем самым давать понять компилятору, что объект заданного типа.

iNils 15.02.2007 14:41

Тема закрыта. Для вопросов по АС, есть соответствующие разделы.


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

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