instanceof用法及本质:
import static java.lang.System.*;
public class InstanceofTest{
public static void main(String[] args){
//-引用变量hello的编译类型为Object,实际类型为String,Object类为所有类的父类
Object hello="hello";
//-String 与Object存在继承关系,可以进行 instanceof 计算,返回true
out.println(hello instanceof Object);
//-hello实际类型为String,可以进行 instanceof 计算,返回true
out.println(hello instanceof String);
//-Math与Object存在继承关系,可以进行 instanceof 计算
//-但hello实际类型为String,与Math不存在继承关系,不能转换,所以返回false
out.println(hello instanceof Math);
//-String类型实现了Comparable接口,可以进行 instanceof 计算,返回true
out.println(hello instanceof Comparable); //-a为彻头彻尾的String 类型,与Math不存在继承关系,不可以进行 instanceof 计算,编译就不会通过,会报错
String a="hello";
//out.println(a instanceof Math);
}
}
运行结果:

总结:
1、用于判断前面的对象是否是后面的类,或者其子类、实现类的实例,是,返回true,不是,返回false
2、前面对象的编译时类型,要么与后面 的类相同,要么与后面的类具有父子继承关系,否则会引起编译错误
instanceof用法及本质:的更多相关文章
- typeof()和instanceof()用法区别
typeof()和instanceof()用法区别: 两者都是用来判断数据类型的 typeof()是能用来判断是不是属于五大类型Boolean,Number,String,Null,Undefined ...
- Java中instanceof用法
java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例.instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例. 用法:resu ...
- javascript中typeof和instanceof用法的总结
今天在看相应的javascript书籍时,遇到了typeof和instanceof的问题,一直不太懂,特地查资料总结如下: JavaScript 中 typeof 和 instanceof 常用来判断 ...
- js中typeof与instanceof用法
今天写JS代码,遇到动态生成多个名称相同的input复选按钮 需要判断其是否是数组,用到了if (typeof(document.MapCheckMgr.checkid)!="undefin ...
- java中的instanceof用法详解
instanceof是Java的一个二元操作符(运算符),也是Java的保留关键字.它的作用是判断其左边对象是否为其右边类的实例,返回的是boolean类型的数据.用它来判断某个对象是否是某个Clas ...
- java中的instanceof用法
Java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例.instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例. 用法: ...
- js中typeof与instanceof用法区别
今天写JS代码,遇到动态生成多个名称相同的input复选按钮 需要判断其是否是数组,用到了if (typeof(document.MapCheckMgr.checkid)!="undefin ...
- java :instanceof用法
Java中的instanceof是用来判断某个实例是不是某个类的实例. 例如:A instanceof B (A为某个实例,B为某个类名) 如果A为B的实例,则:(A instanceof B)==t ...
- JS中typeof和instanceof用法区别
typeof和instanceof都可以用来判断变量 1.typeof用以获取一个变量或者表达式的类型,typeof一般只能返回如下几个结果: number,boolean,string,functi ...
随机推荐
- FIO read测试结果偏离
工作中发现一个fio问题,测试组测试出来的数据read速度一个是17.0G/s,一个是13.2G/s.要知道我后台只有24块7.2k RPM的机械硬盘啊!怎么也不可能有这样的速度. 回家之后我模拟了实 ...
- php中csv文件的下载
使用header头部定义就可以,一下为阿拉蕾项目文件下载的部分代码:$user_infos = “”;if(!empty($download)) { header("Content-type ...
- 2018-2019-2 《网络对抗技术》Exp1 PC平台逆向破解 Week3 20165233
Exp1 PC平台逆向破解 实验内容 一.基础知识点 NOP, JNE, JE, JMP, CMP汇编指令的机器码 NOP指令即"空指令",执行到NOP指令时,CPU什么也不做,机 ...
- margin-top失效
span标签是行类元素,只能margin-left,right 解决办法: 将span标签改为块级标签
- 最近玩的centos7.3用的防火墙转载
CentOS 7 firewalld使用简介 1.firewalld简介 firewalld是centos7的一大特性,最大的好处有两个:支持动态更新,不用重启服务:第二个就是加入了防火墙的“zone ...
- linux7安装teamViewer
参考网站:http://blog.sina.com.cn/s/blog_15308c8290102x72u.html 下载网站:https://www.teamviewer.com/zhCN/down ...
- centos7环境下的Mysql5.7.22安装
参考网站: https://blog.csdn.net/vipbupafeng/article/details/80271089 1.下载 官网链接:https://dev.mysql.com/dow ...
- task 03-27
To integrate the spring with jpa, Basically completed the jpa of study;To integrate the spring wi ...
- Redis hash数据结构
1, 新增一个 hash 或者 新增数据 => hset key field value 2, 获取某个字段值 => hset key field 3, 获取所有字段值 => hge ...
- XE Styles不见了
C:\Users\Public\Documents\Embarcadero\Studio\15.0\Styles 我移动到D盘了 D:\Users\Public\Documents\Embarcade ...