Цитата:
Сообщение от fljot
Зачем тогда переопределять? *вопрос ко всем любителям супер-ов*
|
Как зачем? Ну очевидно же: чтобы его использовать.

Код AS3:
public class A {
public function method():void {
trace("I`m original method");
}
}

Код AS3:
public class B extends A {
public function func1():void {
this.method();
}
}

Код AS3:
public class C extends B {
override public function method():void {
trace("I`m overriden method");
}
}

Код AS3:
var c:C = new C();
//мне необходимо вызвать старый метод, а выходит - наоборот
c.func1();//I`m overriden method
//мне необходимо вызвать новый метод, все работает как надо
c.method();//I`m overriden method
Не получается то чего я хочу добиться. Поэтому, мне в теле func1() нужно менять "this.method();" на "super.method();". Противники супер-ов, как по вашему мне добиться того, что я хочу, если в функции func1() НЕ писать super.method() ?