Java Наследование

User avatar
wolfboy
Уже с Приветом
Posts: 1224
Joined: 24 Feb 2003 07:40

Java Наследование

Post by wolfboy »

Есть класс FatherClass и класс ChildClass. ChildClass Выполняет интерфейс MyInterface, в котором метод MyMethod.
Имеем
FatherClass c=new ChildClass();
Как теперь вызвать c.MyMethod(), если на момент вызова не известно, что с -'это ChildClass Object, а только известно, что он Выполняет интерфейс MyInterface?
chip700
Уже с Приветом
Posts: 672
Joined: 11 Apr 2001 09:01
Location: Russia, NN

Post by chip700 »

((MyInterface) c).MyMethod();
User avatar
wolfboy
Уже с Приветом
Posts: 1224
Joined: 24 Feb 2003 07:40

Post by wolfboy »

Спасибо. Да, все просто.
Palych
Уже с Приветом
Posts: 13683
Joined: 16 Jan 2001 10:01

Post by Palych »

No luchshe tak ne delat' :umnik1:
I s Reflection poakuratney...
User avatar
mikeG
Уже с Приветом
Posts: 8485
Joined: 02 Aug 2003 01:32
Location: SPb->SFBA

Post by mikeG »

Palych wrote:Но лучше так не делать :умник1:
И с Рефлецтион поакуратнеы...


А почему собственно?
И где здесь reflection? :pain1:
User avatar
Strannik223
Уже с Приветом
Posts: 569
Joined: 14 Dec 2003 04:06
Location: Львов->Киев->Торонто

Re: Java Наследование

Post by Strannik223 »

wolfboy wrote:Есть класс FatherClass и класс ChildClass. ChildClass Выполняет интерфейс MyInterface, в котором метод MyMethod.
Имеем
FatherClass c=new ChildClass();
Как теперь вызвать c.MyMethod(), если на момент вызова не известно, что с -'это ChildClass Object, а только известно, что он Выполняет интерфейс MyInterface?


Что то я не понимаю, если не надо вызывать методы предка то почему не сделать

Code: Select all

MyInterface myIntf = new ChildClass();
myInf.MyMethod();
Никакой разрухи нет. (с) Проф. Преображенский.

Return to “Вопросы и новости IT”