亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

java怎么遍歷實體類獲取屬性值

小億
127
2023-10-09 17:46:45
欄目: 編程語言

在Java中,可以使用反射來遍歷實體類并獲取屬性值。下面是一個示例代碼:

import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class Main {
public static void main(String[] args) {
// 創建實例對象
Person person = new Person("John", 25, "Male");
// 獲取實例對象的Class對象
Class<?> clazz = person.getClass();
// 獲取所有的字段(Field)
Field[] fields = clazz.getDeclaredFields();
// 遍歷字段
for (Field field : fields) {
// 獲取字段名
String fieldName = field.getName();
// 構造對應的get方法名
String getMethodName = "get" + fieldName.substring(0, 1).toUpperCase() + fieldName.substring(1);
try {
// 獲取對應的get方法
Method getMethod = clazz.getMethod(getMethodName);
// 調用get方法獲取屬性值
Object value = getMethod.invoke(person);
// 輸出屬性名和屬性值
System.out.println(fieldName + ": " + value);
} catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException e) {
e.printStackTrace();
}
}
}
}
class Person {
private String name;
private int age;
private String gender;
public Person(String name, int age, String gender) {
this.name = name;
this.age = age;
this.gender = gender;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
public String getGender() {
return gender;
}
}

上述代碼中,通過反射獲取實例對象的Class對象,然后使用getDeclaredFields()方法獲取所有的字段(Field),再通過構造對應的get方法名,使用反射獲取對應的get方法,并調用get方法獲取屬性值。最后遍歷輸出屬性名和屬性值。

0
宁德市| 辽阳县| 奉贤区| 湟源县| 黎城县| 甘洛县| 平潭县| 灯塔市| 祁门县| 新津县| 新闻| 舞钢市| 灵宝市| 南岸区| 大同县| 渭源县| 毕节市| 阜阳市| 衡山县| 霍山县| 望谟县| 扎囊县| 徐水县| 秦皇岛市| 卢氏县| 晴隆县| 泸水县| 嘉义市| 昌黎县| 玉田县| 彩票| 汽车| 旺苍县| 韶山市| 九江市| 新龙县| 金溪县| 抚州市| 义马市| 怀远县| 沿河|