一百字讲明白instanceOf关键字

概念

instanceof 是 Java 的保留关键字,它的作用是测试它左边的对象是否是它右边的类的实例,返回 boolean 的数据类型,需要注意的是,该关键字用的是它左边对象的实际类型去判断的,而不是用的它的引用类型,例如

class A{}
class B extends A{}
A obj = new B();

对象obj的引用类型是A,但它的实际类型是B(A的子类类型)

案例

class A{}

class B extends A{}

class C extends A{}

class D extends B{}

A obj = new D();

System.out.println(obj instanceof B);

System.out.println(obj instanceof C);

System.out.println(obj instanceof D);

System.out.println(obj instanceof A);

结果

true
false
true
true

结果分析

类继承关系如下
在这里插入图片描述
对象obj的引用类型是A,但它的实际类型是D,而通过继承关系可以看出来,obj属于D类型(它本身就是D类型)、obj属于B类型、obj属于D类型、obj属于A类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值