黑马程序员技术交流社区

标题: 接口怎么会有对象呢 [打印本页]

作者: 戴振良    时间: 2012-3-27 16:54
标题: 接口怎么会有对象呢
在观看张孝祥视频中的API时,有以下内容:

Collection:对象之间没有指定的顺序,允许重复元素
Set:对象之间没有指定的顺序,不允许重复元素
List:对象之间有指定的顺序,允许重复元素


这3个不都是接口吗?怎么说是对象呢?
作者: zhouxp3323    时间: 2012-3-27 16:59
Collection是所有集合的父类接口,Set和List都是它的子类,集合里面是用来存储对象的,你说的那些意思是,它们里面的存储的对象允许或者不允许重复元素,不是指Collection、Set、List它们自己.
作者: 戴振良    时间: 2012-3-27 17:14
zhouxp3323 发表于 2012-3-27 16:59
Collection是所有集合的父类接口,Set和List都是它的子类,集合里面是用来存储对象的,你说的那些意思是, ...

那您说的“它们里面存储的对象……”中的“它们”指的是谁呢?
作者: zhouxp3323    时间: 2012-3-27 17:18
戴振良 发表于 2012-3-27 17:14
那您说的“它们里面存储的对象……”中的“它们”指的是谁呢?

是指Collection,Set,List,Collection是Set,List的父接口,Set,List里面存储的是对象。
作者: 戴振良    时间: 2012-3-27 17:48
它们不是接口吗?怎么能存东西呢?接口又不能产生对象,我搞晕了{:soso__8993449223179388634_1:}
作者: 贠(yun)靖    时间: 2012-3-27 18:38
  你查查api 就懂了    就拿list接口来说吧
    实现它的一个抽象方法是avstractList 类   里面有迭代器 iterator() 方法  该方法返回Iterator迭代器的对象
   而 arralist接口类 继承了AbstractList抽象类   所以arralist 就有iterator方法  调用它就可以得到一个Iterator迭代器的对象了
  你看看这继承和实现关系   感兴趣的话再看看abstractlist类的源码  里面代码超简单的  一看就懂   里面定义了一个迭代器的内部类   set和这个同理
  java.util
类 ArrayList<E>
java.lang.Object
  java.util.AbstractCollection<E>
      java.util.AbstractList<E>
          java.util.ArrayList<E>
所有已实现的接口:
Serializable, Cloneable, Iterable<E>, Collection<E>, List<E>, RandomAccess
直接已知子类:
AttributeList, RoleList, RoleUnresolvedList

作者: izwj    时间: 2012-3-27 18:49
这里指接口的子类的对象如,List:ArrayList,LinkedList,set:TreeSet,HashSet
作者: 翟友伟    时间: 2012-3-27 20:19
看毕老师的    视频吧  
这3个 都不是接口
作者: 郑洋洋    时间: 2012-3-27 20:48
这叫集合,专门存放对象元素的
作者: 戴振良    时间: 2012-3-27 21:57
izwj 发表于 2012-3-27 18:49
这里指接口的子类的对象如,List:ArrayList,LinkedList,set:TreeSet,HashSet

还是你的回答比较好,谢了!




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