Java class的isAssignableFrom方法怎么用
如判断一个类,是否是List或其超类或超接口是否是List.
public boolean isAssignableFrom(Class<?> cls)
判定此 Class 对象所表示的类或接口与指定的 Class 参数所表示的类或接口是否相同,或是否是其超类或超接口。如果是则返回 true;否则返回 false。如果该 Class 表示一个基本类型,且指定的 Class 参数正是该 Class 对象,则该方法返回 true;否则返回 false。
特别地,通过身份转换或扩展引用转换,此方法能测试指定 Class 参数所表示的类型能否转换为此 Class 对象所表示的类型。有关详细信息,请参阅 Java Language Specification 的第 5.1.1 和 5.1.4 节。
参数:
cls - 要检查的 Class 对象
返回:
表明 cls 类型的对象能否赋予此类对象的 boolean 值
boolean f1 = List.class.isAssignableFrom(ArrayList.class); //true
boolean f2 = ArrayList.class.isAssignableFrom(List.class); //false
System.out.println(f1);
System.out.println(f2);
本文介绍了Java中Class类的isAssignableFrom方法,用于判断一个类是否是另一个类或接口的超类或超接口。例如,List.class.isAssignableFrom(ArrayList.class)返回true,表明ArrayList是List的子类。这个方法在进行类型转换检查或泛型限制判断时非常有用。
980

被折叠的 条评论
为什么被折叠?



