Why duplicate interface implements

In the Java API source code, for example, java.util.HashMap extends AbstractMap and implements Map while the former already implements the latter. What could be the reason for this redundancy?
[199 byte] By [SeaRinga] at [2007-11-27 6:41:56]
# 1
It's a style thing basically. It doesn't make any difference and you can argue it makes it easier to look at the code.
YoGeea at 2007-7-12 18:11:52 > top of Java-index,Java Essentials,Java Programming...
# 2

that's probably the reason, documentation.

It's also more futureproof, as it allows the definition of AbstractMap to at some point change to one that doesn't implement Map without if affecting the interface of HashMap (potentially of course, method signatures would have to be preserved).

jwentinga at 2007-7-12 18:11:52 > top of Java-index,Java Essentials,Java Programming...