- Если ваша переменная в классе "Person" имеет статус c:
(на мой взгляд, это не лучшее решение)
Объяснение: метод getField возвращает поле типа " msgstr "так что вы НЕ МОЖЕТЕ сохранить в переменную другого типа без преобразования.
YourField.get возвращает объект, поэтому вы НЕ МОЖЕТЕ сохранить в переменную другого типа без преобразования.
try{
Class _person = Person.class;
Field field = _person.getField("name");
Object value = field.get(null);
String valueString = (String)value; /*The String you are looking for*/
}catch (Exception e) {
//TODO handle exception
}
Если ваша переменная в классе "Person" имеет статус c:
String valueString = Person.name /*The value you are looking for*/
Если ваша переменная не stati c, а publi c:
ВАЖНО (Если вы не установили значение по умолчанию для переменной):
В этом случае значением будет пустая строка потому что вы создаете новый экземпляр вашего статуса. Вы можете установить "имя человека" в конструкторе вашего класса Person другим способом, которым вы получите пустую строку, потому что переменная не stati c.
Person _person = new Person();
String personName = _person.name;