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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 宋美成 中级黑马   /  2014-4-1 12:14  /  1879 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 宋美成 于 2014-4-1 12:18 编辑

这个把我给整抑郁了,学迷糊了。哎,且学且珍惜啊
在学到迭代器Iterator的时候,有这么一句话:Iterator it = coll.iterator()//其中coll是ArrayList的对象;
问题:接口不能有对象啊,那上面这句话的it应该怎么理解呢,莫非我想的有问题,求大神知道这句话该怎么解释

3 个回复

倒序浏览
本帖最后由 林发明 于 2014-4-1 12:26 编辑

这句代码是父类引用指向子类对象 使用的是多态,
查看ArrayList的api文档 就可以发现 ArrayList实现了Iterator 接口,

点评

赞一个,明白了,谢谢啦  发表于 2014-4-1 12:49
回复 使用道具 举报
ArrayList是List接口的实现类,而List接口又继承了Collection接口,Collection接口呢又继承了Iterable接口,其中这个接口提供了可以返回遍历集合中所有元素的迭代器的iterator方法。
Iterator it = coll.iterator()//其中coll是ArrayList的对象
这其实是多态的体现
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马