我正在阅读集合,以了解Javadocs中实现的层次结构。

Collections声明为public class Collections extendds Object

Collection<E>声明为public interface Collection<E> extends Iterable<E>

AbstractCollection声明为public abstract class AbstractCollection<E> implements Collection<E>

AbstractList声明为public abstract class AbstractList<E> extends AbstractCollection<E> implements List<E>

我的问题是
1)Collections and Collection之间是否有任何连接。我什么都没看到?

2)对extending Collections Class类有什么需求,因为在AbstractList类中实现的方法(例如AbstractList)也可以在listIterator中抽象,而实现类也可以实现这些方法?

最佳答案

类层次结构中没有关系。 Collections只是一个充满实用程序方法的类,可以在Collection类上使用。
对于想实现自己的AbstractList类的人来说,List只是一个很好的助手。扩展AbstractList可以避免编写大量样板代码,因为您可以重复使用已经存在的代码。正如javadoc所说:


  此类提供List的基本实现。
  接口以最小化实现此接口所需的工作
  由“随机访问”数据存储(例如数组)支持。

07-26 01:52