Код: Выделить всё
public class Parent {
....
}
public class Child1 extends Parent {
....
public void foo() {
....
}
}
public class Child2 extends Parent {
....
public void foo() {
....
}
}
Код: Выделить всё
Parent obj = ...// Object of one of the child classes
obj.foo();
Мое решение : Подход, о котором я думаю, заключается в том, чтобы определить интерфейс, говорящий FooInterface, с помощью метода foo() и позволить всем дочерним классам реализовать его, тогда я мог бы просто ввести cast the obj< /code> к этому интерфейсу и вызовите метод foo() следующим образом:
Код: Выделить всё
if(obj instanceof FooInterface){
((FooInterface)obj).foo();
}
Подробнее здесь: https://stackoverflow.com/questions/234 ... rent-class