Person类,中部分代码没理解作用?
还有0人有此问题
发表在Java视频课程答疑 2017-06-23
是否精华
版块置顶:

                 Person p;

if (o instanceof Person) {

p = (Person) o;

} else {

return -1;

这段直接改成  Person p = (Person) o;不也可以吗?

为什么要判断  

o instanceof Person 

为true的时候才强制转换?

值为false的时候 对象o已经超出person类的范围了 可能就是其余类的对象  返回-1是什么作用?


分享到:
精彩评论 3
David
学分:914 LV7
TA的每日心情
最后的冲刺
2017-07-15 10:46:08
2017-06-24
沙发

instanceof运算符(“是否为某个类的对象”)的作用是避免对象强制转型时产生错误。有些时候错误地使用强制转型,虽然可以编译成功,但由于实例对象与所要转型的类型不符合,运行时会发生ClassCastException。

17625087881
学分:42 LV2
2017-06-24
板凳

David 发表于2017-06-24 16:03

instanceof运算符(“是否为某个类的对象”)的作用是避免对象强制转型时产生错误。有些时候错误地使用强制转型,虽然可以编译成功,但由于实例对象与所要转型的类型不符合,运行时会发生ClassCastException。

原来如此,就是杜绝出现  类转换异常‘

David
学分:914 LV7
TA的每日心情
最后的冲刺
2017-07-15 10:46:08
2017-06-26
地板

是的。

首页上一页 1 下一页尾页 3 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照