java高手们请教个问题

来源:百度知道 编辑:UC知道 时间:2024/05/25 19:14:12
如何用java反射机获得原始对象的值。谢谢了
public class Stu {
public String name="Tom" ;

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}

}
如果在反射机中得到name的值.谢谢了
public Object aa(Object object){
Class classType=object.getClass();

Field fields[]=classType.getDeclaredFields();
for(int i = 0;i<fields.length;i++){
System.out.println(fields[i].getType());
System.out.println(fields[i].getName());
}
return object;
}
在这里我能够得到stu类的属性名与属性类型,但是得不到name的值。在这里应该得到?

还是不可以,编译不通过

寒…我给你写完。
public static void listFiles(Object object) throws Exception{
Class cls = object.getClass();
Field fields[] = cls.getDeclaredFields();
for(int i=0;i<fields.length;i++){
System.out.print(fields[i].getType()+"\t");
System.out.print(fields[i].getName()+"\t");
fields[i].setAccessible(true);
Object objValue = fields[i].get(object);
System.out.println(objValue);
}
}

使用的地方要加try/catch
try {
Reflect.listFiles(new Cache());
} catch (Exception e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}

知道的给个答案.谢谢