の宣言を見ていたらArrayList
class ArrayList<E> extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable
のスーパークラスが同じインターフェースを実装しているにList
もかかわらず、これはインターフェースを実装しています。ArrayList
AbstractList
List
abstract class AbstractList<E> extends AbstractCollection<E> implements List<E>
同様の宣言はHashMap
、LinkedHashMap
宣言にもあります。
の宣言ではLinkedHashMap
、Map
インターフェイスのみを実装し、そのスーパークラスによって実装される他のインターフェイスは実装しませんHashMap
。
したがって、そのような宣言を行うことにはいくつかの利点があるかもしれません。