Java中重写Object类中的equals()方法问题?

如图,请问其中的o==null时为什么可以直接返回false,当this==null时o和this的值不就相同了吗... 如图,请问其中的o == null 时为什么可以直接返回false,当this == null时o和this的值不就相同了吗 展开
 我来答
戈壁与清潭
2019-12-23 · TA获得超过735个赞
知道小有建树答主
回答量:571
采纳率:57%
帮助的人:125万
展开全部
因为 当对象能调用到 equals 函数时 this 一定不是 null,所以 o == null 时 this 一定不等于 o , null 代表着空对象,无任何方法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2019-12-23
展开全部
找个直白一点的比喻 this = 手机 o = 另一部手机 equals=打通电话

this = null 的时候,表示你根本没买手机,想打电话咋弄?肯定脑子里抛出来个疑问:“我手机呢?" 就是java中抛出来的空指针异常
所以在调用对象的 方法之前,首先确保对象不能为null,这也是一般写equals的时候,要求必须能保证部位null的 一方在前,不确定的在后 比如 定义变量String str, 因为不确定是不是null,所以如果用其他确定有值的字符串比较的时候 可以 "".equals(str)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
悬崖长河
2019-11-10 · 超过13用户采纳过TA的回答
知道答主
回答量:21
采纳率:100%
帮助的人:6.3万
展开全部
当this == null时调用equals()方法会抛出NullPointerException,所以不会出现这种情况。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
GTA小鸡
高粉答主

2019-11-09 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2.6万
采纳率:78%
帮助的人:1.3亿
展开全部
null是个对象吗?在null上能调用equals方法吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式