阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

对象的判断(instanceof)

92次阅读
没有评论

共计 1287 个字符,预计需要花费 4 分钟才能阅读完成。

1、instanceof 概述

instanceof 是 Java 中的关键字,它的作用是判断其左边对象是否为其右边类的实例。

2、instanceof 格式

boolean result = object instanceof class; //result:boolean 类型。 //object:必选项。任意对象表达式。 //class:必选项。任意已定义的对象类。

如果该 object 是该 class 的一个实例,那么返回 true。如果该 object 不是该 class 的一个实例,或者 object 是 null,则返回 false。

3、instanceof 应用

案例:

共有的接口或类

interface A { } class B implements A { } class C extends B { }

3.1、对象为 null 时

public class InDemo01 {public static void main(String[] args) {A a = null; B b = null; boolean res; System.out.println("对象为 null 时: ------------------"); res = a instanceof A; System.out.println("a instanceof A:" + res); res = b instanceof B; System.out.println("b instanceof B:" + res); } }

运行结果:

对象的判断(instanceof)

3.2、对象不为 null 时

public class InDemo02 {public static void main(String[] args) {System.out.println("/ n 对象不为空时: ------------------"); A a = new B(); B b = new B(); Boolean res = a instanceof A; System.out.println("a instanceof A:" + res); res = a instanceof B; System.out.println("a instanceof B:" + res); res = b instanceof A; System.out.println("b instanceof A:" + res); res = b instanceof B; System.out.println("b instanceof B:" + res); } }

运行结果:

对象的判断(instanceof)

3.3、强制类型转换时

public class InDemo03 {public static void main(String[] args) {System.out.println("/ n 对象强制类型转换时: ------------------"); B b2 = (C) new C(); Boolean res = b2 instanceof A; System.out.println("b2 instanceof A:" + res); res = b2 instanceof B; System.out.println("b2 instanceof B:" + res); res = b2 instanceof C; System.out.println("b2 instanceof C:" + res); } }

运行结果:
对象的判断(instanceof)

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-06-06发表,共计1287字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中