[Java] Классы и методы 3. Угадайка числа
Правила игры
Доделайте дома и принесите результат на урок в понедельник.
Задание
Все задания выполняются в трех файлах (трех классах):
1) Класс Player
в котором есть поля и методы свойственые каждому игроку (каждому конкретному объекту Player
).
2) Класс GuessGame
в котором есть информация обо всех игроках, о правильном ответе, о том какой раунд игры идет и о том как провести очередной раунд.
3) Класс GameTesting
в котором есть только метод public static void main(String[] args)
внутри которого вы будете и тестировать все то что реализуете помере выполнения задания.
Задание 1. Создайте описание класса игрок
Создайте класс Player
описывающий участника игры.
Игрок знает (т.е. у него есть соответствующие поля):
- Свое имя
- Максимальное число которое он знает (в этом воображаемом мире у всех очень разная школьная программа)
- Свою последнюю догадку (каждый раз когда игрок делает новую попытку угадать - он запоминает это число как последнюю догадку)
Игрок умеет:
- Представляться назвав свое имя (напечатав его и короткое приветствие в консоль) - метод
sayYourName
. - Сделать новую догадку о загаданном числе - метод
guessANumber
(с учетом того какое самое большое число знает игрок).
Задание 2. Создайте описание класса контролирующего процесс игры
Создайте класс GuessGame
описывающего проводимую игру.
Игра знает:
- Три игрока - три поля типа
Player
- Правильный ответ - поле типа
int
- Сколько раундов уже идет угадайка
- Не завершилась ли игра
Игра умеет:
- Подготовить все для начала игры (создать трех случайных игроков, загадать число, и указать что число проведенных раундов равно нулю) - метод
initGame
. - Провести очередной раунд (попросить каждого игрока сделать догадку о загаданном числе, обновить счетчик проведенных раундов, проверить не угадал ли кто-нибудь, и все эти действия сопроводить яркими оповещениями в консоль) - метод ```nextRound`.
- Отвечать на запрос “не завершилась ли уже игра?” - метод
isFinished
возвращающийboolean
тип, т.е.true
илиfalse
.