public class ReflectTest { public static void main(String[] args) { String name; if (args.length > 0) name = args[0]; else name = JOptionPane.showInputDialog("输入一个类名:按(java.lang.Double)格式");
try { Class cl = Class.forName(name); Class supercl = cl.getSuperclass(); //获得超类的Class对象 System.out.println("class "+ name); //判定超类是否为空或为Object if (supercl != null && supercl != Object.class) System.out.println("extends "+ supercl.getName());
for (int i = 0; i < fields.length; i++) { Field f =fields[i]; Class type = f.getType(); String name = f.getName(); System.out.print(Modifier.toString(f.getModifiers())); System.out.println(" "+ type.getName() +" "+ name + ";"); } } }