PDA

Просмотр полной версии : Наследование


BigDan
28.08.2006, 15:25
Как сделать чтоб подкласс наследовал методы и свойства более чем одного суперкласса. С помощью extends можно унаследовать только один класс.

Бармалей
28.08.2006, 16:28
расширить сразу несколько надклассов невозможно

etc
28.08.2006, 16:49
никак
BigDan, какие классы ты хочешь расширить?

BigDan
28.08.2006, 17:01
Я создаю свой класс personInfo, хочу его разширить классами MovieClip, TextField, TextFormat. Я слишал что разширить класс можно с помощью интерфейса, но как не имею понятия. Еще есть такой вариант:
class a extends b{...}
class c extends a{...}
Но у меня нету полных AS-файлов таких классов как MovieClip.
Это могло бы выглядеть так:
class MovieClip extends TextField{};
class TextFormat extends MovieClip{};
class personInfo extends TextFormat{};

etc
28.08.2006, 17:06
MovieClip, TextField, TextFormat друг-друга расширять не могут.
Интерфейсы здесь тоже не помогут, потому что код методов должен быть прописан в классе, реализующем интерфейс.

Кстати, имена классов обязаны начинаться с прописной буквы.

Как вариант: написать класс, расширяющий MovieClip, а уже внутри него создавать TextField и TextFormat

BigDan
28.08.2006, 19:03
_etc классная идея. Большое спасибо.

BigDan
28.08.2006, 20:27
Ещё один вопрос к теме КЛАССЫ:
Я объявляю свойство X в моем классе, иксовая кордината клипа созданого в классе соответствует этому свойству.Как записать такой код: при изминении нашего свойства у экземпляра обьекта , изменялась иксовая кордината клипа.

etc
28.08.2006, 20:32
public function set X(x:Number):Void {
if (!isNaN(x)) {
this._x = x;
}
}
Юзать:
anyClass_mc.X = 50;