![]() |
наследование vs экземпляр класса
Всем привет, пытаюсь упорядочить несколько классов и файлов, так чтобы не писать по несколько раз один и тот же функционал, подскажите как лучше подойти к проблеме?
Я создал класс, описывающий поведение кнопки ToggleButton.as, но у меня в разных файлах, есть кнопки, с очень похожим функционалом, вся проблема в том, что из-за того, что все в разных файлах, я не могу наследоваться от ToggleButton, а только от MovieClip, т.к. это документ классы разных кнопок. Может в каждом документ классе создавать экземпляр класса ToggleButton, соответственно расшарив до "public" его свойства и методы и соответственно, менять их и добавлять по мере необходимости в документ классе текущей кнопки? Или же есть реешение лучше? Добавлено через 8 часов 55 минут хм, народ, неужели никто не сталкивался? Неужели придется copy/paste использовать для документ класса? |
Кинь исходник, я посмотрю.
|
Если у тебя есть несколько классов которые реализуют одну и ту же логику, то имеет смысл вынести её в базовый класс, а остальные наследовать от него.
|
ситуация немного другая - я не могу наследоваться от этого класса, поскольку каждый раз это новый проект с новым документ классом, который должен наследоваться от MovieClip, мне нужно реализовать функционал в разных файлах, может какие нть подойдут инструменты типа - интерфейс, инкапсуляция, наследование, композиция, просто не могу так сходу определить что может подойти.
|
А причем тут документ класс и класс кнопки? У вас приложение состоит из одной кнопки?
|
Гм, и плевать.
Пусть будет YourCustom class extends Button Class extends MovieClip Когда говорят что должен наследоваться от MovieClip имеют ввиду, что они смогут привести это дело к MovieClip, т.е. достаточно чтобы MovieClip мелькнул в цепочке наследования. А будет он от него наследоваться сразу или через 40 классов - дело Ваше. |
Psycho Tiger, ты имеешь ввиду так -
Код AS3:
обалдеть...это то что надо, но как это будет работать? Flash поймет в итоге что это? А вообще тогда вопрос - вот у меня есть класс, от которого я унаследуюсь ToggleButton, а что из себя будет представлять класс FirstToggleButton, это будет тоже самое+ функционал FirstToggleButton, т.е. я в классе ToggleButton могу писать все так, как будто бы это уже и есть класс FirstToggleButton? И потом, по идее в FirstToggleButton, я могу добавить функционал, напрмер создать переменную или функцию...хм...а если нужно обратиться к переменной или функции родительского класса, они там public должны быть? И вообще как к ним обращаться через this, через parent? |
Цитата:
|
Цитата:
|
Цитата:
|
| Часовой пояс GMT +4, время: 10:20. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.