为了账号安全,请及时绑定邮箱和手机立即绑定

Iterator是一个接口,为什么会创建实例对象呢?

iterator it=



正在回答

4 回答

实例化对象还可以用其它类返回一个实例化的对象;比如iterator()会返回一个Iterator()实例对象

0 回复 有任何疑惑可以回复我~

Iterator是一个接口,接口可以声明但是不能被实例化,

579845990001877705000151.jpg

首先来看一下我们程序中调用的iterator(),返回了一个Itr()的实例

5798459a000165da05000266.jpg

然后发现,这个Itr是ArrayList的一个内部类,里面重写了我们需要的hasNext()等方法

还不明白的话?

5798459a0001ff5f04500400.jpg


0 回复 有任何疑惑可以回复我~

ArrayList的实例对象调用iterator()方法返回该对象的迭代器,为了便于使用,于是用Iterator it;声明一个引用用来操作该对象的迭代器。迭代器是基于具体集合对象的,不能单独存在。

0 回复 有任何疑惑可以回复我~
#1

痛仰乐队

那么ArrayList的实例对象为什么可以调用iterator()方法呢?
2016-05-14 回复 有任何疑惑可以回复我~

这里的Iterator的确是接口,这里是用接口来声明ArrayList.iterator()方法返回的对象。这里只是声明, 并没有用Iterator创建。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

Iterator是一个接口,为什么会创建实例对象呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信