instanceof关键字的使用

本文介绍 Java 中 instanceof 关键字的使用方法,并通过一个示例程序展示如何判断对象是否属于特定类型,同时演示了类型转换的过程。

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

inttanceof关键字用来判断一个引用指向的对象是不是某种类型,具体代码块如下:

package com.javaeasy.logcar;


import com.javaeasy.car.CarBase;   //这个类就不写出来了
import com.javaeasy.othertransport.Bike;   //这个类就不写出来了


public class TransportRecoder {
public static int counter = 0;    //静态变量,用于保存经过的交通工具数


public static void recordTransport(Object transportObj) {     //静态方法,用于处理一辆经过的交通工具。Object类是万类之祖,其引用可以指向任何类
if (transportObj == null) {
return;
} else {
counter++;
TransportStatus status = null;     //TransportStatus类的引用
if (transportObj instanceof CarBase) {         //判断transportObj指向的是不是Carbase类的对象
CarBase car = (CarBase) transportObj;    //前面学习过通过一个引用可以调用什么方法,是由引用的类型决定的。所以在确定Object引用指向Carbase类的                                                                                                   //对象后,首先创建一个Carbase类的引用,然后将Object类的引用强制类型转换后,给这个新创建的引用赋值。
status = car.getCarStatus();
} else if (transportObj instanceof Bike) {   //否则就判断是不是Bike类的对象
Bike bike = (Bike) transportObj;      //是则强制类型转换
status = bike.getBikeStatus();
}
System.out.println("以下是经过的第" + counter + "辆车的信息:");
System.out.println("车为:" + status.getName() + ",车速为:"
+ status.getSpeed());
}
}

前面学习过通过一个引用可以调用什么方法,是由引用的类型决定的。所以在确定Object引用指向Carbase类的对象后,首先创建一个Carbase类的引用,然后将Object类的引用强制类型转换后,给这个新创建的引用赋值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值