Is there any specific reason(other than what is mentioned below) why all the methods declared in java.util.Collection is duplicated in java.util.List interface?
According to java.util.List Api:
The List interface places additional stipulations, beyond those specified in the Collection interface, on the contracts of the iterator, add, remove, equals, and hashCode methods. Declarations for other inherited methods are also included here for convenience.
Just for the sake of addtional documentation(stipulations) is it good to repeat the method declarations like that?