我介绍了抽象动物类是其子类的抽象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