2012-03-15 21 views
1

「位置X」と「位置Y」を設定するクラスにメソッドがあります。継承メソッド呼び出し - Java

public class Player { 

    int positionX, postinionY; 

    public void setPosition (int position_X, int position_Y) 
    { 
     positionX = position_X; 
     postinionY = position_Y; 
    } 

} 

グリッドと呼ばれる配列を持つ別のクラス「World」があります。グリッドから位置を取得するには、Playerの位置xとyの値を使用する必要があります。

public class World extends Player { 
    int [] [] grid = new int [16] [16]; 

    public int getLocationID (int x, int y) 
    { 
     return grid [x][y]; 
    } 
} 

私はあなたが(プレイヤー)自分の位置IDを取得Worldに別のメソッドを追加することができ、位置Xを取るのに役立ちY(プレーヤー)、代わりにXをそれらを使用し、Y(世界)

+4

これは完全にはっきりしていません。 –

+0

どういう意味ですか?そして、Worldの背後にあるロジックはPlayerを継承していますか? – darijan

答えて

5

必要があります。

public int getPlayerLocationID() { 
    return grid[positionX][positionY]; 
} 

しかし - 正直 - 宇宙のどのような種類で、私たちは「世界がある-プレーヤー」関係がありますか?私が知っているすべての宇宙では(実際には1つのみ)、通常は「の世界には人のプレーヤーがいる」という世界があります。

0

このメソッドは、必要な操作を行う必要があります。

public class World extends Player { 
    int [] [] grid = new int [16] [16]; 
    public int getPlayerID (int locationX, int locationY) 
    { 
     if((locationX>15)||(locationX>16)) 
      throw new InvalidArgumentException("Player locations should be less than 16!"); 
     return grid [locationX][locationY]; 
    } 
} 

提供された引数が有効でない場合は、例外がスローされることに注意してください。

関連する問題