我在课堂中回顾字段类型时遇到问题。Java反射,获取属性名称和类型
class Test {
public int x;
public int[] y;
public String[] names;
}
public class Main {
static void main(String[] args) {
try {
printAttributes(Class.forName("Test"));
}
catch(Exception ex){}
}
static void printAttributes(Class clazz) {
Field[] fields=clazz.getFields();
for (int i = 0; i < fields.length; i++) {
System.out.println(fields[i].getType().getName().toString()+" "+ fields[i].getName().toString());
}
}
}
输出
int x //its OK
[I y //I need **int[] y**
[Ljava.lang.String; names //I need **java.lang.String[] names**
我怎样才能得到正确格式的属性类型?
发表雅就开始工作了很多感谢 – 2011-01-13 15:18:06