Java运算符之instanceof

本文主要介绍了Java中instanceof运算符,它用于操作对象实例,检查对象是否为特定类型。说明了其使用格式,通过示例展示了运算结果为真的情况,还强调判断实例引用类型用实际类型,以及子类与父类类型声明的规则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

instanceof 运算符
该运算符用于操作对象实例,检查该对象是否是一个特定类型(类类型或接口类型)。
instanceof运算符使用格式如下:
( Object reference variable ) instanceof (class/interface type)
如果运算符左侧变量所指的对象,是操作符右侧类或接口(class/interface)的一个对象,那么结果为真。如:
String name=“James”;
boolean result=name instanceof String;//由于name是String类型,所以返回true。
如果被比较的对象兼容于右侧类型,该运算符仍然返回true。
class Vehicle {}

public class Car extends Vehicle {
public static void main(String[] args){
Vehicle a = new Car();
boolean result = a instanceof Car;
System.out.println( result);
}
}
注意在判断一个实例引用的类型时,使用的是实际类型,而不是声明的类型,所以Vehicle a = new Car();a时car类型。另子类是父类的类型,但父类不是子类的类型。
子类的实例可以声明为父类型,但父类的实例不能声明为子类型。
所以Car b=new Vehicle();//此表达式错误
Vehicle c=new Vehicle();boolean result=c instanceof Car;//false

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值