Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Java. Взятие значение переменной по ее имени.

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
mkudelya



Зарегистрирован: 12.03.2008
Сообщения: 4

СообщениеДобавлено: Ср Мар 12 2008 15:06    Заголовок сообщения: Java. Взятие значение переменной по ее имени. Ответить с цитатой

Здравствуйте!

Есть поле в классе:
private int NUMBER_VAR = 10;

надо написать примерно так и получить в ответ 10;

System.out.print (getValue("NUMBER_VAR"));

Нигде так и не нашел как это можно сделать.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Yello



Зарегистрирован: 09.03.2006
Сообщения: 107

СообщениеДобавлено: Ср Мар 12 2008 16:26    Заголовок сообщения: Ответить с цитатой

То есть, у тебя имеется объект такого класса, в поле NUMBER_VAR которого (в поле объекта) текущее значение 10?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
mkudelya



Зарегистрирован: 12.03.2008
Сообщения: 4

СообщениеДобавлено: Ср Мар 12 2008 16:52    Заголовок сообщения: Ответить с цитатой

У меня есть суперкласс A в котором находится это поле, B наследует A и в одном из методов B нужно получить значение поля.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Yello



Зарегистрирован: 09.03.2006
Сообщения: 107

СообщениеДобавлено: Ср Мар 12 2008 17:57    Заголовок сообщения: Ответить с цитатой

Я, конечно, не спец по java.
А в C++ есть слово this, это - указатель на вызвавший (твою функцию) объект (это - указатель на структуру).
Поэтому, там бы это значение лежало бы в:
(*this).NUMBER_VAR,
или (что то же самое), в this->NUMBER_VAR,
или же (что опять то же самое) просто NUMBER_VAR.
(всё вышесказанное верно внутри тела метода класса).
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
mkudelya



Зарегистрирован: 12.03.2008
Сообщения: 4

СообщениеДобавлено: Ср Мар 12 2008 19:01    Заголовок сообщения: Ответить с цитатой

Мне нужно немного другое. продемонстрирую на PHP примере.
$a = 'hello';
в переменной "a" есть текстовое значение "hello"
echo ${"a"};
конструкция ${"a"} буквально означает $a, т.е. береться текст внутри кавычек и рассмотривается как имя переменной

Вот мне и в яве нужно нужно найти такую конструкцию или иной способ Smile
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Mytilus Galloprovincialis



Зарегистрирован: 30.08.2005
Сообщения: 358
Откуда: откуда все люди родятся

СообщениеДобавлено: Ср Мар 12 2008 19:13    Заголовок сообщения: Ответить с цитатой

mkudelya писал(а):
Вот мне и в яве нужно нужно найти такую конструкцию или иной способ Smile


Не помню точно, но, кажется, это функция eval().
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
mkudelya



Зарегистрирован: 12.03.2008
Сообщения: 4

СообщениеДобавлено: Ср Мар 12 2008 20:44    Заголовок сообщения: Ответить с цитатой

Mytilus Galloprovincialis писал(а):
mkudelya писал(а):
Вот мне и в яве нужно нужно найти такую конструкцию или иной способ Smile


Не помню точно, но, кажется, это функция eval().


Как вариант.
Я нашел выход. Common это класс, в котором находится числовая переменная abc, ее содержимое можно распечатать таким способом.


Class c = Class.forName("Common");
Field f = c.getDeclaredField("abc");
System.out.print(f.getInt(c));
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
tellary



Зарегистрирован: 29.01.2008
Сообщения: 7

СообщениеДобавлено: Ср Июл 02 2008 18:42    Заголовок сообщения: Ответить с цитатой

Объясните мне в чем выигрыш по сравнению с
Код:
System.out.println(Common.abc)
?
Здесь одно из двух:
- либо моя тупость.
- либо ваше "горе от ума".
Очень редко, когда использование reflection'a в яве является оправданным.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...