1,对象与类的比较
被测对象(自身/子类实例) instanceof 自身类
检查左边的被测试对象是不是右边类的实例化。如果被测对象是null值,则测试结果总是false
String s=new String("javaisland");
System.out.println(s instanceof String); //true
Class.isInstance(Object obj)
obj 是被测试的对象,如果 obj 是这个 class 的实例,则返回 true。这个方法是 instanceof 运算符的动态等价。
String s=new String("javaisland");
System.out.println(String.class.isInstance(s)); //true
2,类与类的比较
Class.isAssignableFrom(Class cls)
cls 是被测试的类,如果 class 与参数 cls 相同或者是其父类,则返回true
System.out.println(ArrayList.class.isAssignableFrom(Object.class)); //false
System.out.println(Object.class.isAssignableFrom(ArrayList.class)); //true
本文详细阐述了Java中对象与类之间的基本概念,包括如何使用instanceof关键字和Class类的isInstance()方法来判断对象是否为特定类的实例,以及类与类之间的继承关系如何通过Class类的isAssignableFrom()方法进行验证。

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



