本帖最后由 yunhaitian 于 2012-11-29 15:52 编辑
刘文飞 发表于 2012-11-29 13:25
Vector中的elements方法返回的是Enumeration类型而不是
实现了Enumeration的子类的对象。所以这里应该不 ...
以下是java源码:
public Enumeration<E> elements() {
return new Enumeration<E>() {//此处其实是一个匿名内部类实现了 Enumeration的部分方法,是多态,只是他的子类是以匿名内部类出现的
int count = 0;
public boolean hasMoreElements() {
return count < elementCount;
}
public E nextElement() {
synchronized (Vector.this) {
if (count < elementCount) {
return elementData(count++);
}
}
throw new NoSuchElementException("Vector Enumeration");
}
};
} |