Показать сообщение отдельно
Старый 23.03.2012, 00:07
Mur4ik вне форума Посмотреть профиль Отправить личное сообщение для Mur4ik Найти все сообщения от Mur4ik
  № 1  
Ответить с цитированием
Mur4ik
ветеран форума

Регистрация: Sep 2008
Сообщений: 717
Записей в блоге: 4
Отправить сообщение для Mur4ik с помощью ICQ
По умолчанию Наследование, как вызвать метод любого из предков?

Есть базовый класс A, далее класс B наследует класс А, и так же есть класс С наследует класс B.
Класс А содержит метод someMethod(), класс B его переопределяет, С тоже переопределяет.

собственно нужно при переопределении в С вызывать супер метод не B, а А
/*псевдокод*/
Код AS3:
class A {
    public function someMethod():void {
        // код
    }
}
 
class B extends A {
    override public function someMethod():void {
        super.someMethod();
        // и еще какой то код
    }
}
 
class C extends B {
    override public function someMethod():void {
        //какой то код
 
        // и вот тут нужен фокус типа super.super.someMethod();
 
        // и еще какой то код
    }
}
Ну в в теории как вызывать методы любого потомка? Если это вообще возможно без хаков и изворотов.
__________________
trace("Остановите Землю, я сойду!!!");