假设我使用一个包含2个类的单个Java文件,例如A&乙 (B扩展A)。
那么如何在Java中使用反射找到A类?
Java反射中是否有任何方法可以获取所有超类?
答案 0 :(得分:0)
B object;
Class subclass = object.getClass();
Class superclass = subclass.getSuperclass();
答案 1 :(得分:0)
那么如何在Java中使用反射找到A类?
致电Class.getSuperclass()
。它返回超类,如果没有超级类,则返回null
。
Java反射中是否有任何方法可以获取所有超类?
不,没有。但是,您可以通过循环轻松找到类的所有超类; e.g。
public List<Class> getAllSuperclasses(Class cls) {
List<Class> res = new ArrayList<>();
while ((cls = cls.getSuperclass()) != null) {
res.add(cls);
}
return res;
}