2014-03-28 98 views
5

java.util.*AbstractSet<E> implements Set<E>,那麼爲什麼HashSet<E> extends AbstractSet<E> implements Set<E>顯示?這裏的「implements Set<E>」是否重複?爲什麼複製工具

回答

2

這樣做是爲了能夠覆蓋javadoc文檔。
例如,HashSet<E>AbstractSet<E>的javadoc不同。

它也可以做更清晰。

2

是的,它是重複的,但我想這是一個編碼風格的決定。我也喜歡明確實現一個類型被激勵的接口來引入。擴展只是一個實現細節,最常見的是重用動機。因此,即使在移除基類並以某種其他方式實現這些功能時,從基類繼承的類型也將保持穩定。