Как программно дать имя экземпляру класса? Учу Java, столкнулся с такой проблемой, нужно вводить имя игрока, и , на основании этого имени создается новый объект класса Игрок, но я понял, что не могу и не знаю как это сделать. А как без этого создавать другие объекты, количество которых будет разным?public void gameStart() {
String name;
Scanner input = new Scanner(System.in);
System.out.println("Input your player name:");
name = input.next();
System.out.println("You name now: " + name);
... здесь я хотел создать объект, но понял, что не могу
}
Вобщем проблема такая, что везде где нужен объект, мне нужно писать конструкцию типа:Team ivan = new Team("Ivan");
Как сделать это динамически? Вобщем, я хочу чтобы каждый раз выполнении метода создавался экземпляр класса.

21 Авг 2019 в 07:01
189 +1
0
Ответы
1

Для динамического создания объекта класса, вы можете использовать рефлексию в Java. В вашем случае для создания объекта Игрок с именем, введенным пользователем, вы можете использовать следующий код:

public void gameStart() {
String name;
Scanner input = new Scanner(System.in);
System.out.println("Input your player name:");
name = input.next();
System.out.println("You name now: " + name);
try {
Class<?> playerClass = Class.forName("Player");
Constructor<?> constructor = playerClass.getConstructor(String.class);
Object player = constructor.newInstance(name);
// Теперь у вас есть объект player класса Player с заданным именем
} catch (Exception e) {
e.printStackTrace();
}
}

Пожалуйста, обязательно убедитесь, что у вас есть класс Player с конструктором, который принимает строку (имя игрока) для использования этого кода.

20 Апр 2024 в 13:09
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 96 340 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир