假设我有两个Class对象。有没有一种方法可以检查一个类是否是另一个的子类型?

 public class Class1 { ... }

 public class Class2 extends Class1 { ... }

 public class Main {
   Class<?> clazz1 = Class1.class;
   Class<?> clazz2 = Class2.class;

   // If clazz2 is a subtype of clazz1, do something.
 }

最佳答案

if (clazz1.isAssignableFrom(clazz2)) {
    // do stuff
}

这将检查clazz1是否相同,或者是clazz2的父类(super class)。

10-02 13:07