import java.lang.reflect.Field;
public class TestParam {
public String name="hzhou";
public TestParam() {
}
public static void main(String[] arg){
try {
Class cl = Class.forName("TestParam");
Field[] fls=cl.getDeclaredFields();
for(int i=0;i<fls.length;i++){
System.out.println(fls[i].getName());
}
}
catch (ClassNotFoundException ex) {
System.out.println(ex.getMessage());
}
}
}为什么输出显示只有 TestParam
而不是象jdk说的那样可以把所有public,private的field都显示出来?
public class TestParam {
public String name="hzhou";
public TestParam() {
}
public static void main(String[] arg){
try {
Class cl = Class.forName("TestParam");
Field[] fls=cl.getDeclaredFields();
for(int i=0;i<fls.length;i++){
System.out.println(fls[i].getName());
}
}
catch (ClassNotFoundException ex) {
System.out.println(ex.getMessage());
}
}
}为什么输出显示只有 TestParam
而不是象jdk说的那样可以把所有public,private的field都显示出来?
-----------------------
package csdn.reflect;import java.lang.reflect.*;public class TestParam {
public String name = "hzhou"; public TestParam() {
} public static void main(String[] arg) {
try {
Class cl = Class.forName("csdn.reflect.TestParam");
Field[] fls = cl.getDeclaredFields();
for (int i = 0; i < fls.length; i++) {
System.out.println(fls[i].getName() );
}
Method[] m = cl.getMethods();
for (int i = 0; m != null && i < m.length; i++) {
System.out.println(m[i]);
}
} catch (ClassNotFoundException ex) {
System.out.println(ex.getMessage());
}
}
}
并没有输出public这些呀
Field[] fields = c1.getDeclaredFields();
for(int i = 0 ; i < fields.length ; i++) {
Field f = fields[i];
Class type = f.getType();
String name = f.getName();
jta.append("\t" + Modifier.toString(f.getModifiers()));
jta.append(" " + type.getName() + " " + name + ";\n");
}
}