obj中没有getName()怎么办

obj中没有getName()怎么办

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,同学是想问obj中getName()方法不存在的情况还是getName()获取的name值不存在的情况呐?如果:1、getName()方法不存在,案例中的obj被强转为Animal,this与obj的类是一样的,Ainmal类中有getName()方法,所以只要是Animal类就不会存在getName()方法不存在的情况。

2、getName()获取到的name属性值不存在,就是name属性为空,如果this中的name与obj中的name都是空,那么程序就会抛出空指针异常;如果this的name值不为空,obj的值为空,就会执行判断equals方法两边的值不相等。

如果同学还有问题,请在回答中贴出详细代码以及问题

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

  • 欧拉的小迷弟 提问者 #1
    是不是在Object里的obj对象如果没有getName()方法,被强制转化为Animal后就会返回空指针?
    2019-04-30 19:38:25
  • 同学的理解非常正确哦!如果obj不是Animal类或者Animal的子类,被强转为Animal后获取Animal的属性或方法会报空指针异常! 继续加油~ 如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
    2019-05-01 09:52:17
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师