У меня есть класс Cell
и класс Neighbour
, распространяющийся Cell
. Но я получаю сообщение об ошибке, когда пытаюсь передать ArrayList<Neighbour>
функции, ожидающей ArrayList<Cell>
. Что я пропустил?Полиморфизм и ArrayLists в Java
class Cell {
PVector pos;
Cell(PVector pPos) {
pos = pPos.get();
}
}
class Neighbour extends Cell {
int borders = 0;
Neighbour(PVector pPos) {
super(pPos);
}
}
private int inSet(PVector pPos, ArrayList<Cell> set) {
[...]
return -1;
}
[...]
ArrayList<Neighbour> neighbours = new ArrayList<Neighbour>();
PVector pPos = new PVector(0, 0);
[...]
inSet(pPos, neighbours);
В последней строке бросает ошибку `Метод iniSet (PVector, ArrayList) не применим для аргументов (PVector, ArrayList);
Благодарим за помощь!
Это может помочь понять: http://stackoverflow.com/questions/17131664/inheritance-in-java-with-generics/17131699#17131699 – user2336315