黑马程序员技术交流社区

标题: Map集合中内部接口 [打印本页]

作者: linuxpara910829    时间: 2015-2-23 19:36
标题: Map集合中内部接口
Map是一个接口,Map中的方法由子类实现。
查文挡知道Map接口中有一个嵌套类Map.Entry也是一个接口
查看源码知道Map接口中还定义了一个内部接口Entry接口
问题来了Map的子类实现了Map的方法,哪子类实现了内部接口了没有呢?
作者: linuxpara910829    时间: 2015-2-23 19:45
补充:也就是说   我实现了一个带内部接口的接口,然后我需不需要重写内部接口 ?
作者: Hsidar    时间: 2015-2-23 19:53
可以实现,你不用的话
作者: wildcat    时间: 2015-2-23 20:32
这就加技术分了吗????? 求回答
作者: alvis2015    时间: 2015-2-23 21:16
要看情况了,不一定要实现内部接口,内部接口作为父接口的成员存在,当子类实现这个父接口时,看是否需要访问父接口的内部接口成员,如果需要访问,则要实现,如果不要访问,则没必要实现。
作者: coolmiao13    时间: 2015-2-23 21:21
Map中的Map.Entry嵌套类接口是一个内部接口,Map的子类实现了Map.Entry接口,是通过内部类来实现的。不信可以查阅底层代码。毕老师的视频里有説。
作者: alvis2015    时间: 2015-2-23 21:41
coolmiao13 发表于 2015-2-23 21:21
Map中的Map.Entry嵌套类接口是一个内部接口,Map的子类实现了Map.Entry接口,是通过内部类来实现的。不信可 ...

给力,我已经看过了,是的,也可以不实现。
作者: linuxpara910829    时间: 2015-2-24 01:17
alvis2015 发表于 2015-2-23 21:16
要看情况了,不一定要实现内部接口,内部接口作为父接口的成员存在,当子类实现这个父接口时,看是否需要访 ...

为什么?   hashmap实现了Map接口,按照实现接口的规则,我必须实现接口中的所有抽象方法,才能创建接口的子类对象,Map的内部类接口中的方法还没实现呢  我怎么可以创建对象呢?这就有冲突了,我并没有覆写接口中的所有方法(内部接口方法),就可以创建对象。
作者: huangchunwei    时间: 2015-2-24 09:59
学习学习。。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2