可能重复:
Is it possible to use Java Reflection to print out attributes of the parent class?
嗨,是否可以使用Java Reflection或各种技术来检查一个类是否有父类?
这个想法需要创建一个实用程序类,它接受一个对象,打印出它的属性,如果存在父类,则打印出父类的属性。
编辑我想问一下是否有办法继续检查一个类是否有一个母类一直到Object类。
答案 0 :(得分:3)
使用此:
Class<?> superClass = MyClass.class.getSuperClass();
所有超类:
public static void printSuperClass(Class<?> clazz) {
if (clazz == null) return;
Class<?> superclass = clazz.getSuperClass();
System.out.println(clazz.getName() + " extends " + superclass.getName());
printSuperClass(superclass);
}
答案 1 :(得分:1)
您可以使用for循环来提升父类。
for(Class clazz=object.getClass(); clazz!=null; clazz=clazz.getSuperClass())
System.out.println(clazz);
注意:对象,基元,接口和数组都有null
作为超类。