Я пытаюсь реализовать и переопределить метод с разными типами возвращаемых данных, не будучи вынужденным использовать тип возвращаемого значения.Различные типы возвращаемых данных абстрактного метода в java без литья
public abstract class A {
public abstract Object getValue(String content);
}
public class B extends A {
public String getValue(String content) {...}
}
public class C extends A {
public int getValue(String content) {...}
}
public class D extends A {
public boolean getValue(String content) {...}
}
// Main loop:
for (A a : allAs)
{
// I want to use the method getValue() and corresponding to the type return a String, int or boolean without casting the return type
}
Мой вопрос: Можно ли возвращать различные типы без принуждения бросить? Как выглядит абстрактный метод для решения проблемы?
Я думаю, что там должно быть решение, потому что компилятор должен знать тип возвращаемого ...
Вы не можете переопределить по типам возврата. –
И эта программа не будет компилироваться –