Collection c1 =new ArrayList();
c1.add("hello");
c1.add(1);
Collection c2 =new ArrayList();
c2.add(new Student() );
c2.addAll(c1);
c2.add("我");
Iterator it = c2.iterator();
Collection 与List 还有ArrayList都没有重写iterator()方法,为什么可以最后一步这样调用呢?
ArrayList
hérite de la classeAbstractList
, et la classeAbstractList
remplace la méthodeList
de l'interfaceiterator()
:où
Itr
est la classe interne deAbstractList
et implémente l'interfaceIterator
.N'y a-t-il pas une ArrayList ? ?
Cet itérateur doit être la classe interne d'ArrayList. S'il ne peut pas être trouvé dans ArrayList, il doit être dans sa classe de base. Les itérateurs doivent être différents pour les différentes classes de collection.