Java 递归查出父类
时间: 2023-09-03 15:06:32 浏览: 69
要递归查找一个类的父类,可以使用Java的反射机制来实现。以下是一个示例代码:
```java
import java.lang.reflect.*;
public class Main {
public static void main(String[] args) {
Class<?> childClass = ChildClass.class;
recursiveFindParentClasses(childClass);
}
public static void recursiveFindParentClasses(Class<?> clazz) {
Class<?> parentClass = clazz.getSuperclass();
if (parentClass != null) {
System.out.println(parentClass.getName());
recursiveFindParentClasses(parentClass);
}
}
}
class ParentClass {
}
class ChildClass extends ParentClass {
}
```
在上面的示例中,我们定义了一个ChildClass类继承自ParentClass类。在Main类的main方法中,我们传入ChildClass.class作为参数调用recursiveFindParentClasses方法,该方法会递归查找ChildClass的父类并输出其名称。运行以上代码,输出结果为:
```
java.lang.Object
ParentClass
```
可以看到,递归查找父类的过程会一直到达java.lang.Object类,因为所有类都是直接或间接继承自Object类。