为什么HashMap继承了AbstractMap还要实现Map?

前言

之前看源码一直忽略了这个现象,按理说HashMap的父类AbstractMap已经实现了Map,它为什么还要实现一次呢?遂上网查了一下,背后原因让人大跌眼镜。

原因

这是类库设计者的拼写错误,其实HashMap不应实现Map的。其他容器如List、Set也有这个问题。

参考

为什么HashMap继承了AbstractMap还要实现Map接口
Why does LinkedHashSet extend HashSet and implement Set

点赞