public static void getString(Object object) throws Exception {
// 获得对象类型
Class classType = object.getClass();
Field fields[] = classType.getDeclaredFields();
StringBuffer strvalu=new StringBuffer();
String splitTag="!hermes!";
for (int i = 0; i < fields.length; i++) {
Field field = fields[i];
String fieldName = field.getName();
String firstLetter = fieldName.substring(0, 1).toUpperCase(); // 获得和属性对应的getXXX()方法的名字
String getMethodName = "get" + firstLetter + fieldName.substring(1); // 获得和属性对应的getXXX()方法的名字
Method getMethod = classType.getMethod(getMethodName, new Class[] {}); // 获得和属性对应的getXXX()方法
Object value = getMethod.invoke(object, new Object[] {});
System.out.println(fieldName + ":" + value); // 调用拷贝对象的getXXX()方法
strvalu.append(value).append(splitTag);
}
System.out.println(strvalu.toString());
}
使用反射调用get方法
最新推荐文章于 2023-06-14 09:18:38 发布