2015-08-08 90 views
-1

我不確定覆蓋Collection<E>接口中所有方法的正確方法是什麼。實現java Collection接口的正確方法是什麼

我被要求創建一個類HotDog implements Collection<E>,因此,我必須重寫它包含了所有的方法,我不知道如何做到這一點,因爲一般我認爲最好的解決辦法是繼承從一類媒體鏈接實現Collection接口。

的需求將有一個熱狗對象計算全價取決於成分熱狗擁有量的熱狗的目的的功能,相信收藏功能是在配料熱狗。

+2

有沒有最好的辦法,它只是取決於您的要求 – Dici

回答

4

有三種方法來創建一個新的集合:

  • 從無到有。您可以實現接口的所有方法。
  • 擴展現有類,就像你已經提到過的那樣。 Java爲此提供了抽象類:java.util.AbstractCollection以及用於特定類型集合的各種實現。這些抽象類允許您專注於集合如何存儲其元素,而不必自己編寫所有方法。
  • 組成。你的類基本上是一個現有集合類的包裝,並將其所有方法調用(除了一些你想調整的行爲除外)直接重定向到包裝集合的方法。

哪種方法最好取決於您的特定要求。

+0

嘿,謝謝你的答案。那麼如何從* scratch *開始實現呢? –

+0

@estebanrincon查看「Collection」接口的JavaDoc。首先,您必須決定如何存儲集合的元素(例如數組或某種鏈接列表),然後實現接口的所有方法。 – Hoopje

相關問題