12 java中instanceof运算符的意义和用法
java中instanceof运算符的意义和用法
instanceof运算符是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来标识该对象是否为特定类或者它的子类的一个实例。
代码:
interface A{ }
class B implements A{ }
class C extends B{ }
public class Iinstanceof { public static void main(String[] args) { A ab=new B(); A ac=new C(); B bc=new C(); B bb=new B(); C cc=new C(); // 对象实现一个接口,用这个对象和这个接口进行instanceof判断,都为true。System.out.println("ab instanceof A="+(ab instanceof A)); System.out.println("ac instanceof A="+(ac instanceof A)); System.out.println("bc instanceof A="+(bc instanceof A)); System.out.println("bb instanceof A="+(bb instanceof A)); System.out.println("cc instanceof A="+(cc instanceof A));System.out.println("=========================");// 对象和父类(对象 和 其本身)进行instanceof判断,都为trueSystem.out.println("ab instanceof B="+(ab instanceof B)); System.out.println("ac instanceof B="+(ac instanceof B)); System.out.println("bc instanceof B="+(bc instanceof B)); System.out.println("bb instanceof B="+(bb instanceof B)); System.out.println("cc instanceof B="+(cc instanceof B));System.out.println("ac instanceof C="+(ac instanceof C));System.out.println("bc instanceof C="+(bc instanceof C));System.out.println("cc instanceof C="+(cc instanceof C));System.out.println("========================");// 对象和他的子类进行instanceof判断为falseSystem.out.println("ab instanceof C="+(ab instanceof C));System.out.println("bb instanceof C="+(bb instanceof C)); }
}结果:
ab instanceof A=true
ac instanceof A=true
bc instanceof A=true
bb instanceof A=true
cc instanceof A=true
=========================
ab instanceof B=true
ac instanceof B=true
bc instanceof B=true
bb instanceof B=true
cc instanceof B=true
ac instanceof C=true
bc instanceof C=true
cc instanceof C=true
========================
ab instanceof C=false
bb instanceof C=false
12 java中instanceof运算符的意义和用法相关推荐
- Java 中 Comparable 接口的意义和用法.
在之前的博文中已经介绍了Java中Collection 接口和 Collections类. http://blog.csdn.net/nvd11/article/details/21516075 一, ...
- java中instanceof的用法和实战
https://blog.csdn.net/qq_37192800/article/details/78861387 https://www.cnblogs.com/zjxynq/p/5882756. ...
- 关于java中位运算符的使用和理解
关于java中位运算符的使用和理解 &(按位与) ' & ' 符号的作用是对运算符的两侧以二进制表达的操作符按位进行'与'运算. 规则: 只有两个操作数对应位同为1时,结果为1,其余全 ...
- Java中的运算符——赋值运算符详解
赋值运算符主要是这几种:=.+=.-=.*=./=.%=,其它和二进制相关的内容这里就不详细解释了.赋值类的运算符包括基本赋值运算符(=)和扩展的赋值运算符(+=.-=.*=./=.%=).我们来看一 ...
- java中的.运算符_java中的各种运算符
1.算术运算符: 算术运算符也就是我们小学所学过的:+ - * /:还有取模运算符:%:取模运算符也就是求余的 运算: 运算形式:操作数 + 操作数:操作数 - 操作数:操作数 * 操作数:操作数 / ...
- java is instance of_详谈Java中instanceof和isInstance的区别
一次性搞定instanceof和isInstance,instanceof和isInstance长的非常像,用法也很类似,先看看这两个的用法: obj.instanceof(class) 也就是说这个 ...
- JAVA中接口存在的意义
很多JAVA程序员对于接口存在的意义很疑惑.不知道接口到底是有什么作用,为什么要定义接口.好像定义接口是提前做了个多余的工作.下面我给大家总结了4点关于JAVA中接口存在的意义: 1.重要性:在Jav ...
- 详细介绍Java中的运算符
Java中类型转换 不同类型的数据可以在一起运算,需要将他们转换为同一类型,就可以进行运算 Java类型转换的分类 隐式类型转换[自动类型转换] 小范围数据转大范围 byte->short-&g ...
- Java中的运算符——逻辑运算符详解
逻辑运算符主要包括逻辑与( & ),逻辑或( | ),逻辑异或( ^ ),短路与( && ),短路或( || ).所有逻辑运算符的特点是操作数都是布尔类型,并且最终的运算结果也 ...
最新文章
- oracle10g删除asm组,Oracle 10G RAC 删除已有节点
- VB高效导入Excel2003和Excel2007文件到MSHFlexGrid控件显示
- 如何在C中为一个数组分配空间?
- Vertical Menu ver4
- Python编程基础:第二节 多重赋值Multiple Assignment
- “CObject::operator =”: 无法访问 private 成员(在“CObject”类中声明)
- Android项目导出jar包的小技巧
- 【⭐C/C++の深入浅出⭐】int数与多枚举值互转
- CG CTF WEB /x00
- 深度学习笔记——基于传统机器学习算法(LR、SVM、GBDT、RandomForest)的句子对匹配方法
- jQuery jsonp跨域请求
- 向分布式存储系统的迁移-使用ZFS/Gluster
- 【C++内存管理-从平地起到万丈高楼】引言
- 国内外常用学术网站(访问不了“谷歌学术”的,试一试有惊喜哦)
- 阿里M8每天肝到凌晨,竟是只为一份文档把分布式到微服务讲清楚
- Lua 报错 PANIC: unprotected error in call to Lua API (no calling environment) 解决办法
- python求平均数保留两位小数_python求平均数、方差、中位数的例子
- 算法 — 十六进制转八进制
- 不努力的程序员注定被裁员
- 精准引流客源的方法 129种引流方法全方位操作
热门文章
- 靶场设备常见的报靶方式有哪些
- 宁盾荣获“2021年度临港园区潜力之星”称号
- QT实战项目 - 随意听音乐闹钟
- 【安全硬件】Chap.2 如何破译一个CMOS门级电路;传播延迟、动态功耗、静态功耗可能泄露电路的构造以及输入密钥;非侵入式攻击 Non-Invasive Attacks
- 利用PS把多张psd格式的图片转换为一张PDF格式
- 产品健康度模型(2) KPI、KQI
- 落球法测量液体的粘滞系数的数据处理(C++实现)
- JavaWeb新闻发布系统案例5
- gps定位服务器文件,通用GPS配置文件 GPS.conf 文件配置详解(转载)
- AutoCAD2009中文版【32位】下载地址 仅供学习交流