Вопрос Как в Java использовать строку в качестве названия экземпляра класса?

Регистрация
29 Янв 2013
Сообщения
98
Репутация
0
Спасибо
0
Монет
0
И возможно ли это в принципе?

Имеется класс Car, в котором описаны определённые атрибуты автомобиля, геттеры, сеттеры, а также конструктор. В главном методе предопределено определённое количество автомобилей, имеет это добро следующий вид:



875a8375f91de049494d6073098e8a2f_1561eaf6c4d14922f266e58124c6c020.png



На месте тойоты может быть любая другая модель авто.

Также был создан метод для вывода всей описанной информации:



875a8375f91de049494d6073098e8a2f_c2529bd14ac4e6ae45c2bcf0cf4c42ea.png



И вот в чём проблема. Мне нужно сделать так, чтобы по строке, введённой пользователем, производился поиск экземпляра класса Car, т.е. конкретный авто (та же toyota, opel, volkswagen и т.д.). В данный момент это реализовано через switch-case:



875a8375f91de049494d6073098e8a2f_625f5f9ddc185a21ccdd61f2412e5812.png



Проблемы такого подхода очевидны. Интуитивно, хочется подставить в качестве параметра метода для вывода информации строку, в которую записывается запрос пользователя. Но, очевидно, что IDE такие дела осуждает, ибо ему нужен объект, а не строка



875a8375f91de049494d6073098e8a2f_365a7594dfe24eebc5cadd836dbcb2b6.png



Что можете посоветовать в моей ситуации?

P.s. по условию задания, обязательно должны присутствовать геттеры и сеттеры, потому варианты реализации без них не рассматриваются
 
а какой практический смысл иметь класс Toyota?
кажется вы в ООП совсем не вникаете...
 
Перебирай свои объекты и смотри, у которого из них некое поле соответствует введенному. Для этого, разумеется, их придется поместить в некую структуру - в словарь, как показано выше, в массив, в список, в....

И у тебя по большому счету нет никаких тойот. У тебя есть только автомобили, с точки зрения ООП per se они друг от друга не отличаются абсолютно ничем - это все один и тот же класс. Названия переменных-экземпляров никакого значения не имеют и могут быть запросто похерены компилятором (не знаю, делает ли так жаба, но другие- запросто) и после компиляции быть недоступными программно.
 
ржу, когда в ООП методом называют процедуру или функцию, которая н ворвзращает результат, вообще это называется процедурой )))), ну проще выражайтесь, если вы не можете отличить процедуру от функции - дак палата №6 )))))...
 
Назад
Сверху