Просмотр полной версии : class, как лучше ?
class cb1 extends MovieClip {
function cb1 () {
// bla 1
onPress = function () {
// bla 2
}
}
}
или
class cb1 extends MovieClip {
function cb1 () {
// bla 1
}
function onPress () {
// bla 2
}
}
или один хрен ?
зависит от того что ты хочешь получить. В первом примере функция onPress назначается при вызове функции cb1, а во втором - сразу.
во флэше принято классы называть с большой буквы (это так к слову)
второй вариант прявильней, но в результат одни итот же.
результат разный.
1. в первом случае если создать 1000 экземпляров класса будет создано еще
и 1000 экземпляров onPress. соответственно пожрется больше памяти.
во втором случае только один.
2. в первом варианте, если создавать подклассы с вызовом super в конструкторе,
то при наличии в подклассе метода onPress, при создании экземпляра подкласса,
метод onPress будет перезаписан на заданный в конструкторе суперкласса.
во втором случае останется метод onPress подкласса.
2. в первом варианте, если создавать подклассы с вызовом super в конструкторе,
то при наличии в подклассе метода onPress, при создании экземпляра подкласса,
метод onPress будет перезаписан на заданный в конструкторе суперкласса.
... вроде бы флэш при компилировании автоматически пишет "super();" в конструкторе класса... (это я декомпиллером смотрел...)
Это потому что при наследовании в любом случае необходимо вызвать конструкторы всех суперклассов вплоть до начала цепочки.
Если ты его не указал руками -- компилятор подставит. Но можно указать с параметрами, тогда компилятор ничего не добавит.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.