Просмотр полной версии : Наследование. необходимость использования
Добрый день. Вот стыкаюсь иногда с такой проблемой.
В 10 ти классах есть один и тот-же метод... только 1. В свою некоторые классы наследуются от других...
короче.. пока что я просто пишу этот метод в каждом классе. (4 строчки), но так и хочется сделать "прослойку". Или ради этих 4 строчек не стоит так заморачиватся? Как делаете Вы?
CrazyFlasher
03.01.2008, 23:50
стоит...вы сами ответили на этот вопрос :) грубо говоря сделать абстрактный класс и наследовать от него эти четыре строчки :)
а вообще с наследованием надо быть осторожным...чтобы потом не получилось, что допустим вы решите в одном классе что-то изменить, а т.к. он наследуется от другого, придётся и там что-то менять...короче в больших проектах может получиться каша, поэтому нужно подходить с умом и обдуманно
Зависит от ситуации.
1. От чего происходит наследование.
2. Есть ли возможность задать один общий суперкласс.
3. Нужно ли привязывать его к разным классам или лучше выделить этот метод в отдельном классе.
4. Что делает этот метод.
private function initBroadcaster ():Void {
obj_AsBroadcaster = new Object();
AsBroadcaster.initialize (obj_AsBroadcaster);
obj_AsBroadcaster.addListener (this);
}
2. неа...
3. в отдельном ... хм.. неверное не получится.. только если передавать this.
4. инитиализирует
CrazyFlasher
04.01.2008, 00:03
так тут лучше выделить этот метод в отдельном классе и передавать this
UPD: опоздал :)
include вас спасет :)
это шутко? или я недопонял?
Нет, не шутка. Хотите код в одном месте — используйте include, если других вариантов нет. То, что в конечном итоге код после компиляции окажется в разных местах, нас волновать не должно.
Хех, назрел такой вот вопрос. А можно сделать как в АС3 в ЕвентДиспетчере, чтобы интерфейс передавать? (ну, и соответсвенно, чтобы потом этот интерфейс использовался применительно к вновь созданному класу не меняя при этом цепочку наследования?
CrazyFlasher
08.01.2008, 10:33
можно...хотя выложи пример (может я не совсем правильно понял :))
ЗЫ: помоему include это устаревшая конструкция, которую в AS2 уже нет смысла использовать...используя её возвращаемся на несколько лет назад :) (имхо)
include прекрасно и в AS3 работает.
Какие тут примеры надо-то? Написать три класса и в трех написать одну и ту же строчку с include. А во включаемом файле написать необходимый код.
Как раз получается, что код в одном месте для программиста.
Хех, назрел такой вот вопрос. А можно сделать как в АС3 в ЕвентДиспетчере, чтобы интерфейс передавать? (ну, и соответсвенно, чтобы потом этот интерфейс использовался применительно к вновь созданному класу не меняя при этом цепочку наследования?
Интерфейс цепочку наследования не изменяет.
Либо я не понял вопроса.
CrazyFlasher
08.01.2008, 13:57
Какие тут примеры надо-то?
это я по поводу того, что написал wvxvw :)
что касается include:
http://livedocs.adobe.com/flex/2/langref/migration.html
наверное мы говорим о разных инклудах? :)
Инклюд один и тот же, ничего нового не появилось.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.