课程
/后端开发
/Java
/Java入门第三季
第一个问题,55行为什么一定要return false,不可以比较两个空的对象呢?
第二个问题,62行,为什么还要分类this对象的name是不是空呢?直接像69行比较不就行了嘛?感觉有点多此一举呢?
2020-03-19
源自:Java入门第三季 6-1
正在回答
第一个问题:空对象不能调用equals()方法;会抛出空指针异常; 第二个问题:值为null的引用类型变量不能调用非静态方法,会抛出空指针异常; 第三个问题:return后直接会结束函数,同时返回一个返回值;你前面不管怎么执行,最后都会得到一个return语句,所以最后的return语句就多余了; 第四个问题:是执行重写之前的方法。
奶尤糯米团子 提问者
一个大憨憨 回复 奶尤糯米团子 提问者
奶尤糯米团子 提问者 回复 一个大憨憨
qq_慕丝4346553 回复 一个大憨憨
第六十九行调用的是name的equals方法
还有两个问题,系统是怎么辨别是否用加上最后一行(75)的return true的呢?这里为什么就报错了;
当重写的equals()方法里调用了equals()方法(如第69行),是默认执行重写前的方法吗?
这两个都是一个类型的问题,可以了解一下“空指针异常”
举报
Java中你必须懂得常用技能,不容错过的精彩,快来加入吧
2 回答关于重写equals方法的疑问
1 回答6-1节关于重写equals方法的问题
2 回答改写equals方法中
1 回答重写equals方法的问题
2 回答关于equals方法