博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
instanceof运算符初探
阅读量:4092 次
发布时间:2019-05-25

本文共 1129 字,大约阅读时间需要 3 分钟。

1、

class MyObject {}public class ObjectTest {	public static void main(String[] args) {		Object obj = new Object();		Object obj1 = new MyObject();		Object obj2 = null;		if (obj instanceof Object) {			System.out.println("obj指向的对象是Object类型的一个实例");		}		if (obj1 instanceof Object) {			System.out.println("obj1指向的对象是Object类型的一个实例");		}		if (obj1 instanceof MyObject) {			System.out.println("obj1指向的对象是MyObject类型的一个实例");		}		if (obj2 instanceof Object) {			System.out.println("obj2指向的对象是Object类型的一个实例");		}}

运行结果如下:

2、

class MyObject {}public class ObjectTest {	public static void main(String[] args) {		Object obj = new Object();		MyObject mobj;		System.out.println("obj: "+obj);		if ( obj instanceof MyObject ) { //obj必须初始化			mobj = (MyObject)obj;        //若obj是MyObject类型的一个实例,就把它的引用赋给mboj			System.out.println("if结构1有执行。");		}		if ( obj instanceof Object ) { 			mobj = (MyObject)obj;        //若obj是Object类型的一个实例,就把它的引用转化成MyObject,赋给mobj			System.out.println("if结构2有执行。");		}		System.out.println("obj: "+obj);		//System.out.println("mobj: "+mobj);		System.out.println("程序在这里结束。");}

编译结果如下:

程序没有执行if结构1、而执行了if结构2,但是,在执行的时候抛出了类型转换的异常。

 

 

你可能感兴趣的文章
一些实战项目(linux应用层编程,多线程编程,网络编程)
查看>>
原来k8s docker是用go语言写的,和现在所讲的go是一个东西!
查看>>
STM32CubeMX 真的不要太好用
查看>>
STM32CubeMX介绍、下载与安装
查看>>
不要买铝合金机架的无人机,不耐摔,易变形弯曲。
查看>>
ACfly也是基于FreeRTOS的
查看>>
我发现七月在线的GAAS课程基本都讲到了
查看>>
电机堵转
查看>>
carzepony也在想往FreeRTOS上迁移
查看>>
可以买个好点的电烙铁
查看>>
ACfly调参记录(包括ACfly-F330和ACfly-T265)
查看>>
一定记得每飞几次或者隔一天要把螺丝和浆帽拧一次,确实会松的
查看>>
《多旋翼无人飞行器嵌入式飞控开发指南》里基于FreeRTOS的无人机软件框架
查看>>
思岚A1的SDK其实很好读懂,每个函数清晰明了,可以直接调用
查看>>
串级 PID 为什么外环输出是内环的期望?(和我之前对串级PID的总结一样)
查看>>
我刚刚才完全清楚GPS模块的那根杆子是怎么固定安装好的
查看>>
去github里面找找也没有别人无人机+SLAM的工程
查看>>
现在明白为什么无名博客里好几篇文章在讲传感器的滞后
查看>>
Pixhawk解锁常见错误
查看>>
ROS是不是可以理解成一个虚拟机,就是操作系统之上的操作系统
查看>>