Java 5 http://docs.oracle.com/javase/1.5.0/docs/api/java/util/SortedMap.html
Java 6 https://docs.oracle.com/javase/6/docs/api/java/util/SortedMap.html正如你所见,从 Java 6 开始,这三个 api 被覆盖。谁能告诉我进行这样的更改的目的是什么?
最佳答案
必须重写这些方法才能拥有自己的 Javadoc。
在子接口(interface)中声明方法的其他原因是能够限制返回类型或添加注释,但在本例中他们没有这样做,所以这不是原因。
Javadoc 是接口(interface)契约的一部分。在 Java 6 中,Sun/Oracle 认为有必要澄清这些方法在 SortedMap
上的行为,这进一步限制了它们在 Map
中的行为。
例如,在 SortedMap
中,keySet
的 Javadoc 表示:
The set's iterator returns the keys in ascending order.
在 Map
上,相同的方法没有此描述,一般情况下,Map 允许按其喜欢的任何顺序返回键集; SortedMap 进一步限制了自己。
关于java - 为什么Java 6重写SortedMap中的keySet()、entrySet()和values()接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28060736/