覆蓋泛型列表返回類型試圖超越其子類返回類型列表類似如下例所示,由於仿製藥的問題,我不能做到這在我的子類中的方法。我無法更改我的超類代碼,所以我可以如何解決問題?任何人都可以請指導我...很多提前感謝。我如何在Java
超類,它不能被更新:
public class Animal {
private String legs;
}
public class TestSuper {
public List<Animal> addAnimals() {
return animals;
}
}
子類:
public class Dog extends Animal {
private String sound;
}
public class TestSub extends TestSuper {
public List<Dog> addAnimals() { --> I need to override this method but want return type as List of dogs
return null;
}
}
您只能用賦值兼容類型覆蓋返回類型。但是,泛型不是協變的。 '列表'不是'列表'的子類型。請參閱[此線程](http://stackoverflow.com/questions/14694852/can-overridden-methods-differ-in-return-type)。 –