哪个类实际实现了接口(interface)ListIterator
?我正在研究 Collections API.. 似乎在 List
实现类中返回 ListIterator
的实际方法是直接在 List< 中指定的
本身。
ListIterator
接口(interface)指定了您用来操作迭代器的实际方法。但我无法找到实现此功能的实际类。
哪个类实际上实现了允许 List
类中的方法工作的接口(interface) ListIterator
?
我确信必须有一个实现类,因为调用 listIterator()
本身肯定不能返回接口(interface),必须有一些实例化的东西。
最佳答案
使用源卢克...使用源。
来自 JDK 8 (1.8.0_45) 中 ArrayList
的源代码
public ListIterator<E> listIterator() {
return new ListItr(0);
}
// then line 905
/**
* An optimized version of AbstractList.ListItr
*/
private class ListItr extends Itr implements ListIterator<E> {
ListItr(int index) {
super();
cursor = index;
}
// etc
因此,ArrayList
返回的ListIterator
是一个私有(private)内部类,它实现了ListIterator
接口(interface)。
关于java - 什么类直接实现ListIterator?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30185924/