Классы и базовые классы

Из заголовка вы можете заметить, что я новичок в программировании и ActionScript 3. Я не думаю, что понимаю, как работают классы. Особенно в АС3. Я думал, что это куча поведения, которое вы можете прикрепить к своим объектам, и все объекты с одним и тем же классом будут демонстрировать одинаковое поведение и будут иметь свои собственные определенные значения.

Теперь я узнал о базовых классах, и я немного запутался в этих двух типах классов.

У меня есть два объекта на сцене: «яблоко» и «груша». Они оба являются предметами. Я хочу дать им переменные, такие как «имя» и «значок». Поскольку позже это будет система инвентаризации, я хочу использовать класс, который будет применять эти переменные к каждому объекту, которому я назначаю класс «предмет». Я сделал это с объектом «яблоко». Его базовый класс — flash.display.movieClip, а класс — item. Я установил его имя и значения значка на моей временной шкале. Дела шли нормально.

Затем я добавил объект «груша» и обнаружил, что не могу назначить класс «элемент» нескольким объектам. Я немного исследовал и обнаружил, что я должен указать «предмет» в качестве базового класса вместо класса. Хорошо, я изменил их базовые классы на «предмет». Но какими будут классы этих объектов? Я действительно не понимаю и был бы признателен, если бы кто-нибудь объяснил мне простым способом.


person AnilDemir    schedule 12.12.2013    source источник


Ответы (1)


Что вам нужно сделать, так это установить базовый класс как для яблока, так и для груши на ваш класс item. Затем вы установите класс Apple для яблока и Pear для груши.

В зависимости от ваших настроек вы можете получить предупреждение о том, что

Не удалось найти определение для этого класса в пути к классам, поэтому оно будет автоматически создано в SWF-файле при экспорте.

Это не ошибка, и вы можете отклонить это.

Вы также захотите убедиться, что ваш базовый класс item расширяется либо из класса MovieClip, либо из класса Sprite.

person Marcela    schedule 12.12.2013
comment
Большое спасибо за помощь. Я не знаю, почему, но то же самое не работало раньше. Я думаю, что я не сделал то же самое. Теперь все в порядке. Когда я навожу курсор мыши на яблоко, оно показывает яблоко, а груша показывает грушу. Это действительно большой шаг для моей системы. - person AnilDemir; 12.12.2013