反射获取对象属性值
时间: 2023-07-28 19:23:41 浏览: 109
运用反射得到类中的属性和值
您好,反射获取对象属性值可以使用Java的反射机制。以下是一个示例代码:
```
import java.lang.reflect.Field;
public class ReflectDemo {
public static void main(String[] args) throws Exception {
// 创建一个对象
Person person = new Person("张三", 20);
// 获取Person类的Class对象
Class clazz = Person.class;
// 获取Person类的所有属性
Field[] fields = clazz.getDeclaredFields();
// 遍历属性,获取属性值
for(Field field : fields) {
// 设置属性可访问
field.setAccessible(true);
// 获取属性值
Object value = field.get(person);
// 输出属性名和属性值
System.out.println(field.getName() + " = " + value);
}
}
}
class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
}
```
在上面的代码中,我们使用反射获取了Person对象的属性值,具体步骤如下:
1. 创建一个Person对象。
2. 获取Person类的Class对象。
3. 获取Person类的所有属性。
4. 遍历属性,设置属性可访问并获取属性值。
5. 输出属性名和属性值。
希望这个示例能够帮助您理解如何使用反射获取对象的属性值。
阅读全文