2012-03-15 4 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; 
    } 

} 

У меня есть еще один класс «Мир», в котором есть массив, называемый сеткой. Я должен использовать значения позиции x и y из Player, чтобы получить местоположение из сетки.

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

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

Мне нужна помощь, чтобы принять Позиция х, у (игрок) и использовать их вместо х, у (Мир)

+4

Это совершенно неясно. –

+0

Что это значит? И какова логика Мира, наследующего игрока? – darijan

ответ

5

Вы могли бы добавить еще один способ World получить собственный (игроки) ID местоположения:

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

Но - честно - в каком универсума мы имеем отношение «мир есть- игрок»? Во всех универсумах, которые я знаю (хорошо, только один, на самом деле), мы обычно имеем «мир имеет-много игроков».

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]; 
    } 
} 

Следует учесть, что в случае, если предоставленные аргументы являются недопустимыми, оно вызывает исключение.

Смежные вопросы