实现java Collection接口的正确方法是什么

问题描述:

我不确定覆盖Collection<E>接口中所有方法的正确方法是什么。实现java Collection接口的正确方法是什么

我被要求创建一个类HotDog implements Collection<E>,因此,我必须重写它包含了所有的方法,我不知道如何做到这一点,因为一般我认为最好的解决办法是继承从一类媒体链接实现Collection接口。

的需求将有一个热狗对象计算全价取决于成分热狗拥有量的热狗的目的的功能,相信收藏功能是在配料热狗。

+2

有没有最好的办法,它只是取决于您的要求 – Dici

有三种方法来创建一个新的集合:

  • 从无到有。您可以实现接口的所有方法。
  • 扩展现有类,就像你已经提到过的那样。 Java为此提供了抽象类:java.util.AbstractCollection以及用于特定类型集合的各种实现。这些抽象类允许您专注于集合如何存储其元素,而不必自己编写所有方法。
  • 组成。你的类基本上是一个现有集合类的包装,并将其所有方法调用(除了一些你想调整的行为除外)直接重定向到包装集合的方法。

哪种方法最好取决于您的特定要求。

+0

嘿,谢谢你的答案。那么如何从* scratch *开始实现呢? –

+0

@estebanrincon查看“Collection”接口的JavaDoc。首先,您必须决定如何存储集合的元素(例如数组或某种链接列表),然后实现接口的所有方法。 – Hoopje