/*
获取运行时类的父类
*/
@Test
public void test2(){
Class clazz = Person1.class;
Class superclass = clazz.getSuperclass();
System.out.println(superclass);
}
/*
获取运行时类的带泛型的父类
*/
@Test
public void test3(){
Class clazz = Person1.class;
Type genericSuperclass = clazz.getGenericSuperclass();
System.out.println(genericSuperclass);
}
/*
获取运行时类的带泛型的父类的泛型
*/
@Test
public void test4(){
Class clazz = Person1.class;
Type genericSuperclass = clazz.getGenericSuperclass();
ParameterizedType paramType = (ParameterizedType) genericSuperclass;
//获取泛型类型
Type[] actualTypeArguments = paramType.getActualTypeArguments();
System.out.println(actualTypeArguments[0].getTypeName());
}
[反射]获取运行时类的父类及父类的泛型
最新推荐文章于 2022-11-07 16:31:50 发布
这篇博客探讨了如何在Java中获取运行时类的父类以及带泛型的父类信息。通过`getSuperclass()`方法可以获取到类的直接父类,而`getGenericSuperclass()`则用于获取带有泛型的父类类型。进一步地,通过类型转换和`getActualTypeArguments()`方法,可以提取出泛型的实际类型参数。
摘要由CSDN通过智能技术生成