Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java: Общие вопросы > как создать объект, имя которого - строка из файла |
Автор: olegrolik 9.4.2009, 12:50 | ||
Например:
Вобщем, идея такая: В файле есть список строк. я бы хотел их использовать как имена объектов. Возможно такое? |
Автор: Skynin 9.4.2009, 13:42 | ||||
У объектов нет имен, а есть - типы-классы. "Имя объекта" - это переменная-ссылка на него. Чтобы создать объект нужного типа - этот тип заранее должен быть описан в Вашей программе, и должен уметь заполняться с передаваемой строки. Чтобы распознать какой тип объекта должен создаться, а потом заполниться можно 1. Определить вручную, сравнивая имя типа в строке в if (myTypeName.Equals("NNN")) object nnn = new NNN() (можно упрятать это дело в фабрику классов) 2. Использовать reflection 3. Использовать сериализацию
Возможно. |
Автор: olegrolik 9.4.2009, 14:54 |
Skynin, согласен, что я неправильно выразился. Но смысл того, что я прошу понятен? 1. Что такое myTypeName? 2. Как именно использовать reflection (пример) ? 3. Как именно использовать сериализацию(пример) ? Наверняка уже придуман такой велосипед. Я не знаю как его искать. |
Автор: ivg 9.4.2009, 15:57 |
olegrolik, можешь рассказать более раннюю постановку задачи? Потому что, то что ты хочешь (если я правильно понял) - имя переменной становиться известным только на этапе выполнения - никакого практического смысла не имеет. Поставить имя в соответствие объекту в рантайме можно с помощью, например, HashMap. |
Автор: _Y_ 9.4.2009, 17:13 |
Мне кажется здесь какая-то путаница. Вы хотите создать переменную (содержащую ссылку на объект) с именем, которое будет подставляться из файла при работе программы. Но зачем это нужно? Ведь имена переменных во время работы программы никто не видит - они видны только разработчику. Может быть Ваша программа обращается к разным переменным в зависимости от того, что содержится в файле? Я бы использовал для этого структуру TreeMap, а в файле хранил бы не имена переменных, а ключи, по которым объекты и извлекались бы из этой структуры. |
Автор: olegrolik 9.4.2009, 19:01 |
ivg, _Y_, вы правы насчёт практического использования. Сейчас сам понял, что не получится нормально работать с созданным объектом. |