java – LinkedHashMap签名

前端之家收集整理的这篇文章主要介绍了java – LinkedHashMap签名前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
看看LinkedHashMap的JDK源代码,我注意到这个类被声明为:
public class LinkedHashMap<K,V>
       extends HashMap<K,V>
       implements Map<K,V>
   {...

为什么冗余“实现Map< K,V>” (由于HashMap已经实现了Map)?我无法想象这是一个错字…

谢谢.

解决方法

我想这是一种说法

No matter what interfaces HashMap implements (now or in the future),this class should implement the Map interface.

如果负责HashMap的人员决定不再实施Map界面,那么编译器会警告LinkedHashMap的维护者,它不再按照他的意图实现Map界面.

当然,在这种特殊情况下,这是很愚蠢的(HashMap显然总是一个Map),但类似的情况可能会受益于(并已经产生)这样的约定.

原文链接:https://www.f2er.com/java/123277.html

猜你在找的Java相关文章