Вызов метода наследования - Java - PullRequest
1 голос
/ 15 марта 2012

У меня есть метод в классе, который устанавливает «Положение X» и «Положение Y».

public class Player {

    int positionX, postinionY;

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

}

У меня есть другой класс "World", в котором есть массив, называемый grid. Я должен использовать значения положения 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];
    }
}

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

Ответы [ 2 ]

5 голосов
/ 15 марта 2012

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

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

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

0 голосов
/ 15 марта 2012

Этот метод должен делать то, что вы хотите.

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

Обратите внимание, что он выдаст исключение в случае, если предоставленные аргументы неверны.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...