私はゲームを実装していて、次のようないくつかのクラスがあります。
GameObject (Abstract)
CircularGameObject
RectangularGameObject
基本的に、衝突をチェックするための位置(x、y)とさまざまな形状を保存します。
次に、 Wall(長方形)クラスとBomb(円形)クラスを実装します。両方を有効または無効にできるので、宣言します
public interface Activable {
public void setEnabled(boolean status);
public boolean isEnabled();
}
そして、衝突でプレイヤーを殺すアイテム(壁と爆弾)への参照を保存するためのリストが1つあります。GameObjectを拡張してActivableを実装するオブジェクトのArrayListを宣言するにはどうすればよいですか?
クラスを宣言してみました:
public class ActivableGameObject extends GameObject implements Activable{};
ただし、コンパイラは、たとえば、その参照に爆弾を割り当てることを許可していません(CircularGameObjectであるため)