![]() |
|
||||||||||
|
|||||
|
Регистрация: Feb 2010
Сообщений: 23
|
Добрый день.
Создаю два класса: package main { import flash.display.* public class MyGame extends MovieClip { public function MyGame ():void { trace("приступаем"); var button = new MyButton(); } } } package main { import flash.display.* public class MyButton extends MyGame { public function MyButton ():void { trace("а вот и подкласс"); } } } когда компилирую пишет ошибку: Error: Error #2136: SWF-файл file:///D|/test/MyGame.swf содержит недопустимые данные. at main::MyGame() причём если убрать наследование, то всё работает. подскажите пожалуйста в чём дело ![]() |
|
|||||
|
Lorem ipsum
|
я в этом не валом шарю =) утром спецы проснутся — ответят более точно. но ты вроде как зацикливаешь процесс. при любом вызове конструктора MyButton будет вызван конструктор MyGame, который в свою очередь вызывает новый конструктор MyButton, который и т.д.
__________________
Поймай яблоко 2! |
|
|||||
|
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
не путайте наследование и включение. то что майбуттон входит в игру не означает что он наследуется от игры.
вы перепутали child - как ребёнок в списке экранных объектов и child в смысле наследник - это совершенно разные явления.
__________________
Отряд Котовскага |
|
|||||
|
Регистрация: Feb 2010
Сообщений: 23
|
ну не совсем...
я хочу создать переменную в MyGame которую будет потом модифицировать MyButton. Я так понимаю самое правильно решение это наследование... Как ещё по другому сделать её видимой для MyButton |
|
|||||
|
почитайте умных книжек)..
MyButton не обязан быть дитем от MyGame (как сказали выше). для "модификаций" существуют свойства и методы. или я просто не понял мысли, чего , собсно, вы хотите
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
|
Регистрация: Feb 2010
Сообщений: 23
|
может хоть главу в книжке покажете))
ещё раз объясню: есть класс в котором создаётся массив с объектами, в нём находится игровое поле. Далее надо из других классов обращаться к этому массиву для того чтобы модифицировать клетки на поле. В умных книжках написано что подклассам доступны переменные определённые в суперклассах. Как по другому получить к ним доступ я не понимаю... |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Так обращайтесь, при чем здесь наследование.
Да, еще, когда доберетесь до умных книжек - почитайте про разницу между классом и его экземпляром. В AS это совсем не одно и то же.
__________________
Reality.getBounds(this); |
|
|||||
|
"В умных книжках написано что подклассам доступны переменные"
вы не дочитали) доступны свойства, но не их значения ) изменив свойство в экземпляре класса родителя не изменятся значения этих же свойств экземпляров наследников. для ваших целей используйте события
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
|
Регистрация: Feb 2010
Сообщений: 23
|
блин как всё сложно, а может подскажете всё таки как обратиться,
global то нет в AS 3 ) |
|
|||||
|
Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
|
Цитата:
|
![]() |
![]() |
Часовой пояс GMT +4, время: 10:19. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|