java中instanceOf和Class.isInstance(obj)的对比

原创
2014/10/27 23:27
阅读数 9.6K

一.常用Java类检测方法

[1] instanceOf 运算符

instanceOf运算符只被用于对象引用变量,检查左边对象是不是右边类或接口的实例化。如果被测对象是null值,则测试结果总是false。

[2] Class<?>.isInstance(Object obj)方法

isInstance方法,这个方法与instanceof等价,其中obj是被测试的对象或者变量,如果obj是调用这个方法的class或接口的实例,则返回true。如果被检测的对象是null或者基本类型,那么返回值是false;

[3] Class<?>.isAssignableFrom(Class cls)方法

如果调用这个方法的class或接口与参数cls表示的类或接口相同,或者是参数cls表示的类或接口的父类,则返回true。

[4] Class<?>.isMemberClass(Class cls)方法

如果调用这个方法的class或接口是参数cls表示的类中的内部类,或者是参数cls表示的类或接口的父类,则返回true。

[5] Class<?>.isAnonymousClass()方法

判断该类是不是匿名类

 

 

 

展开阅读全文
加载中
点击加入讨论🔥(2) 发布并加入讨论🔥
2 评论
4 收藏
2
分享
返回顶部
顶部