java-类型判断

java-类型判断

起男 452 2022-03-01

java-类型判断

instanceof

instanceof是java的一个运算符,用来判断一个对象是否为一个类的实例

obj instanceof Class //当obj为Class实例、子类实例时或接口实现类时返回true
  • obj:一个对象实例,必须为引用类型,不能是基本类型
  • Class:一个类或者接口

Class.isInstance

该方法是java1.1中引入的,这种方法等效于instanceof操作符。

User.class.isInstance(user);//如果参数不为空,并且可以在不引发ClassCastException的情况下成功将其强制转换为左边的类型时返回true

Class.isAssignableFrom

经常用来判断父子继承关系

List.class.isAssignableFrom(ArrayList.class)//调用者为父类,参数为本身、子类或实现类

Class.isPrimitive()

该方法是用来判断Class是否为基本类型

int.class.isPrimitive();//true
Integer.class.isPrimitive();//false