社区
Java SE
帖子详情
Java中一个类实现Comparator接口时为什么只需重写其中的compare方法,而另一个equals方法不需要?
小舟杂笔
2017-03-01 10:33:23
求大神指点!!!!!!!!!
...全文
629
2
打赏
收藏
Java中一个类实现Comparator接口时为什么只需重写其中的compare方法,而另一个equals方法不需要?
求大神指点!!!!!!!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
小舟杂笔
2017-03-02
打赏
举报
回复
所有类默认继承Object,所以该类已有了Object的equals方法,相当于重写了equals方法。
李德胜1995
2017-03-01
打赏
举报
回复
Object已经实现?
为什么
Comparator
接口
不
需
要
实现
equals
方法
为什么
Comparator
接口
不
需
要
实现
equals
方法
查阅资料后加上个人的猜测: 首先
Compare
中
有两个抽象
方法
需
要
实现
类
去
实现
1.
compare
(T o1,T o2)
方法
2.
equals
(Object obj)
方法
但是实际上
实现
该
接口
时
只
需
要
实现
compare
方法
就不会报错 因为Object
类
是所有的
类
的父
类
,而该
类
中
有自己的
equals
方法
所以我认为
comparator
接口
的
实现
类
(这里说一下 我猜测
实现
接口
的
类
也可以同
时
继承父
类
所以是
实现
类
implements
接口
Java
函数式
接口
的
一个
疑惑:为什么
Comparator
接口
有两个抽象
方法
compare
和
equals
,
Comparator
还是
一个
函数式
接口
?
Java
函数式
接口
的
一个
疑惑:为什么
Comparator
接口
有两个抽象
方法
compare
和
equals
,
Comparator
还是
一个
函数式
接口
?(@FunctionalInterface)_H_X_P_的博客-CSDN博客
重写
了超
类
Object
类
中
任意
一个
public
方法
的
方法
并不算
接口
中
的抽象
方法
。 所以虽然
Comparator
接口
中
有两个抽象
方法
compare
和
equals
,但
equals
并不算入
接口
中
的抽象方 法,所以
Comparator
接口
还是满足函数式
接口
的要求,
Comparator
接口
是
为什么
Comparator
接口
有两个抽象
方法
compare
和
equals
,却可以用Lambda
Comparator
接口
有两个抽象
方法
,
一个
是
compare
,另
一个
是
equals
方法
;这与函数式
接口
定义有冲突,因为在调用用lambda表达式调用
Comparator
接口
中
都是
实现
了
compare
方法
,并没有
实现
equals
,而
equals
是Object
中
的
方法
,所用的
类
都继承Object
类
,所以
equals
继承了Object
中
是
实现
,所以函数式
接口
(Functional Interface)就是
一个
有且仅有
一个
(除和Object
中
方法
有相同签名的外)抽象
方法
,但是可以有多个非抽象
方法
的
接口
。...
实现
Comparator
接口
为什么不用
实现
Equals
方法
本来写的东西是关于
Java
8特性所引发的疑问,结果保存后丢了。。。丢了。。而且还有些问题本人没有搞清楚,为避免误人误己,直接切入主题 直入正题,捞干货 最近看了下
接口
,发现经常用的
Comparator
接口
还有
equals
方法
,但印象
中
,没有要对
equals
方法
做过
实现
,搜索引擎
中
,也没有找到合理的解释,所以引出了这篇文章
Comparator
接口
结构如下:
匿名内部
类
实现
Comparator
接口
,没有
重写
所有
方法
,为何不报错
实现
接口
的
方法
:
类
实现
:
重写
接口
所有
方法
抽象子
类
:抽象子
类
继承
接口
有朋友问:你的匿名对象
实现
接口
怎么
实现
的?怎么还能直接new
接口
呢? 答:匿名对象
类
实现
接口
使用了简化写法,在使用匿名内部
类
时
会自动创建
一个
实现
类
,其实你不是new了那 个
接口
,你是new了那个
实现
类
! 问:你的
重写
方法
怎么没有全部
重写
接口
的 还记的上面那个临
时
创建的
实现
类
吗,他全部
重写
了
接口
方法
,只是
方法
体是空的。我虽然只
重写
了部
Java SE
62,628
社区成员
307,259
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章