我介紹了抽象動物類是其子類的抽象actor類。我現在面臨的問題是,兔類動作方法(動物的一個子類)不起作用。使用泛型參數覆蓋方法
我收到以下錯誤
「兔子不是抽象的,在動物不重寫抽象方法act(java.util.List<Actor>)
」
我認爲,在兔子的行爲方法狐狸會覆蓋在動物的行爲方法和演員。我如何解決這個問題?
下面是在Actor類的抽象方法
abstract public void act(List<Actor>newActors);
該方法然後在動物類與以下代碼
abstract public void act(List<Actor> newAnimals);
該方法然後在兔子和狐狸覆蓋重寫下面的類,這是錯誤發生的地方。
public void act(List<Animal> newRabbits)
{
incrementAge();
if(isAlive()) {
giveBirth(newRabbits);
// Try to move into a free location.
Location newLocation = getField().freeAdjacentLocation(getLocation());
if(newLocation != null) {
setLocation(newLocation);
}
else {
// Overcrowding.
setDead();
}
}
}
完美的作品,|弄糊塗了,因爲我認爲Animal類叫Actor類,而rabbit和fox類叫動物類,再次感謝! @Kevin – user5647516