0

我正在实现一个游戏,我有一些类,比如:

GameObject (Abstract)
CircularGameObject
RectangularGameObject

它们基本上存储位置 (x,y) 和用于检查碰撞的不同形状。

现在我想实现类(矩形)和炸弹(圆形)。两者都可以启用或禁用,所以我声明

 public interface Activable {

     public void setEnabled(boolean status);
     public boolean isEnabled();
 }

而且我有一个列表用于存储对在碰撞中杀死玩家的物品(墙壁和炸弹)的引用。如何声明扩展 GameObject 并实现 Activable 的对象的 ArrayList?

我尝试声明一个类:

 public class ActivableGameObject extends GameObject implements Activable{};

但编译器不允许为该引用分配例如炸弹(因为是一个 CircularGameObject)

4

2 回答 2

1

尝试这个...

Class Bomb extends CircularGameObject implements Activable {

} 
于 2012-08-15T09:46:11.740 回答
1

一种方法是拥有:

`GameObject implements GameObjectInterface {}`

然后:

`Activable extends GameObjectInterface`

这样您就可以使用使阵列使用 Activable。

于 2012-08-15T09:50:59.767 回答