这两个接口的定义如下:
public interface Iterator<E> {
boolean hasNext();
E next();
void remove();
}
public interface ListIterator<E> extends Iterator<E> {
boolean hasNext();
E next();
E previous();
int nextIndex();
int previousIndex();
void remove();
void add(E e);
}
拿hasNext()方法来说,在Iterator已经声明一遍了,在ListIterator中已经被继承了,为什么还要写声明一遍呢?
ä½ å¥½å¤§å¥ï¼ä½æ¯ä»ä»¬åªæ¯æ¥å£åï¼éé¢æ²¡æå ·ä½å®ç°åï¼å ·ä½å®ç°å°ArrayListéé¢ææï¼åªå®ä¹ä¸éååå«å°åèªçç±»ä¸å®æåèªçå®ç°ä¸æ¯æ´å¥½åï¼åäºä¸¤æ¬¡æä»ä¹ä¼ç¹åï¼
追çIteratorålistIteratorè¿ä¸¤ç§è¿ä»£å¨javaå·²ç»å¸®ä½ å好äºï¼å¯¼å ç´æ¥å¯ä»¥ç¨äºåï¼å»ºè®®ä½ 好好ççjavaapiãéè¦æ³¨æçæ¯listIteratoråªè½ç¨äºlistéåï¼å 为åªælistéåæè§æ