A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© mafu1993 中级黑马   /  2016-10-17 19:54  /  1452 人查看  /  19 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我发现接口多态下能调用equals的方法,那就说明他是继承了object类的,可是接口中的所有方法不是都是抽象方法吗?求大神解释下
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端

19 个回复

倒序浏览
你接口多态引用指向的是实现类的对象啊,实现类当然是Object的子类啦
回复 使用道具 举报
gyy 中级黑马 2016-10-18 23:25:28
藤椅
恩,楼上说的是对的,在多态的情况下,你调用的是实现类的equals方法
回复 使用道具 举报
没有继承,接口在java中是一种数据类型
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端
回复 使用道具 举报
我也研究过这个问题。答案是接口都隐含了Object类的所有方法声明,你看不到,但是存在。你可以去csdn找点权威的回答
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端
回复 使用道具 举报
补充一句,当实现类实现接口的同时肯定继承了Object 自然的重写了借口中隐含的抽象方法。
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端
回复 使用道具 举报
IceLoveInFire丶 发表于 2016-10-19 00:10
我也研究过这个问题。答案是接口都隐含了Object类的所有方法声明,你看不到,但是存在。你可以去csdn找点权 ...

好吧,我去看看,谢谢了
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端
回复 使用道具 举报
javaee9527 发表于 2016-10-18 23:22
你接口多态引用指向的是实现类的对象啊,实现类当然是Object的子类啦

你在好好看看我的问题
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端
回复 使用道具 举报
单根继承不就是所有数据类型都有一个根父类Obeject么
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
若白衣卿相 发表于 2016-10-19 00:40
单根继承不就是所有数据类型都有一个根父类Obeject么

多态情况下,调用方法看左边运行看右边,那左边是接口还能用Object的方法,那是不是接口继承了Object
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端
回复 使用道具 举报
mafu1993 发表于 2016-10-19 00:14
你在好好看看我的问题

按你问题的表述,这就是答案
回复 使用道具 举报
接口是接口,类是类,只有类才会间接或者直接继承object超父类,接口只能继承接口,同时也能被类所实现.
接口设计的目的是为了让子类来实现的,是为了使其增加一些扩展功能.
回复 使用道具 举报
mafu1993 发表于 2016-10-19 00:13
好吧,我去看看,谢谢了

这么多人回答,也就你明白我说的什么,他们都没看明白,我说的什么!是不是我表达有问题,大兄弟
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端
回复 使用道具 举报
仔细想了一下,应该是没有的。接口的实现类如果没有父类,它自己一定继承了Obj,如果它是子类,那他的父类肯定继承过Obj。另一个证明就是接口中不能有非抽象方法,如果继承了Obj不可能没有
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
相同后发现2l真大神,只是说的太简练了
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
若白衣卿相 发表于 2016-10-27 02:14
相同后发现2l真大神,只是说的太简练了

我说的是接口引用指向子类对象,接口引用掉方法,自己好好想想,大兄弟,这里面也就一个知道我说什么
来自宇宙超级黑马专属安卓客户端来自宇宙超级黑马专属安卓客户端
回复 使用道具 举报
确实是我没仔细看

来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
你很有想法
回复 使用道具 举报
看大神对话,我表示都看不懂 啊
回复 使用道具 举报
mafu1993 发表于 2016-10-27 00:32
这么多人回答,也就你明白我说的什么,他们都没看明白,我说的什么!是不是我表达有问题,大兄弟
...

可能是别人没想过这事,我当初也纠结过这个问题呢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马