正文
java.lang.reflect.Constructor
实际操作
获取字段类型
public class Main {
public static String abc = "123";
private static List<String> a;
public static void main(String[] args) throws NoSuchFieldException {
Class c = Main.class;
Field field = c.getField("abc");
Field field1 = c.getDeclaredField("a");
System.out.println(field.getType());
System.out.println(field.getGenericType());
System.out.println();
System.out.println(field1.getType());
System.out.println(field1.getGenericType());
}
}
如上代码所示,获取对应字段的Field类,具体使用区别在上一张文末介绍了。
getType直接输出这个字段的类类型。
getGenericType直接输出这个字段的类型,如果是泛型字段的话,输出带有泛型实际参数的类型,如果不是泛型则会在内部调用getType。结果如下所示。
class java.lang.String
class java.lang.String
interface java.util