Цитата:
Сообщение от HardCoder
У меня лишь по разу вызывается:
 Код AS3:
var a:SomeClass = new SomeClass();
a.func1();//1 раз
a.method();//один раз
|
Итого два. А хочется, чтоб в func1 уже был новый.
Цитата:
Сообщение от HardCoder
Захотелось, вызываем:[as3]public function func2():void {
this.method();
}
|
Нет, надо ВЕЗДЕ, а не только в новонаписанной и потому нигде не использующейся func2, ибо возможно уже куча кода понаписана.

Код AS3:
class ololo {//базовый, в нём есть некий метод
public function lolo():void {
trace("ololo");
}
}
class ololo2 extends ololo {
public function lold():void {//есть куча методов, в куче наследников ololo,
//которые вызывают super.lolo(); вместо просто lolo()
super.lolo();
}
}
class ololo3 extends ololo2 {//потребовалось написать класс, где нужно везде
//использовать новый метод lolo (и только в нём и его наследниках).
public override function lolo():void {
trace("ololo3");
}
}
Цитата:
Сообщение от HardCoder
Добавлено через 2 минуты
А, -De-! Вы наверное имеете в виду, что человек из-за невнимательности может поналепить везде super, не зная что на самом деле происходит? Тогда лучше от них отказаться...
|
ЭЭ какбэ надо вообще всегда для себя уметь обосновать, почему ты написал то, что написал %)
Для super вполне есть обьяснения, почему надо его писать - "подчеркиваем, что это вызов именно метода базового класса". Просто есть вот и другие соображения. И я даже не претендую на то, что мои лучше. Просто нигде кроме как "тут" super всюду не лепят и я вот пытаюсь обьяснить, почему %)