Просмотр полной версии : Спецы ООП подскажите (проблема с наследованием)
STILL.05
24.04.2006, 14:40
class Still {
private var x0:Number = 100;
}
// *******************
var stl:Object = new Still();
trace(stl.x0);
Выводит 100! по идее свойство должно быть скрытым?
Интересная особенность если указать var stl:Still= new Still();
то свойство не видно, почему такая разница?
Потому что в твоей переменной, указанной, как Object нет приватной переменной x0, её никто приватной не делал.
Да и потом, после компиляции (если ролик всё-таки скомпилировался без ошибок) вся эта приватность теряется. Так что ничего удивительного тут нет.
Совсем иначе будет в AS3.
если тип не указан, то проверка(при компиляции) не выполняется..
зы: даже если указан свойство все равно видно : trace(stl["x0"])
Но лучше не обманывать компилятор, в будущем это встанет бооооооольшой проблемой
Совсем иначе будет в AS3Интересно, а как это "будет"? Вот у меня стоит флэш 8-й, я юзаю классы. А где грань различия между AS-x ?
Ну если переменная приватная, она будет приватной и проверка её приватности будет работать не только на стадии компиляции, но и во время работы ролика. Правда, пойдут другие проблемы. Если у тебя не существует объект и ты к нему ссылаешься, то весь твой ролик рухнет и перестанет выполнятся. И понять, в чём дело, будет довольно сложно)
мда. грустно. но
1) компилятор то один и тот же? прально? значит и так и так все теперь пишут на АС3.
2) можно использовать токо паблики :-)
3) чтобы ролик не рухался использовать конструкторы-деструкторы и только методы класса..
"Пишут" это громко сказано. Пишут в Eclipse, компилят классы MTASC-ом в ролик и смотрят в Flash Player 8.5
А восьмой флеш почти не используется (разве что для первоначальной компиляции пары строк в самом ролике)
Нет ещё родного компилятора в AS3
Если у тебя не существует объект и ты к нему ссылаешься, то весь твой ролик рухнет и перестанет выполнятся...
примерчик можно ?
silin, к сожалению, нет.
Лучше у Antares-а спросите, я несколько далёк от написания классов на AS3
странно все это слышать: полгода как альфа Flex'а вышла, бета2 на дворе, релиз на подходе, а тут:совсем иначе будет в AS3.., нет ещё родного компилятора в AS3.., весь твой ролик рухнет..
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.