gpt4 book ai didi

java - 为什么 NavigableSet JavaDoc 声明了实现细节?

转载 作者:搜寻专家 更新时间:2023-10-31 20:16:39 25 4
gpt4 key购买 nike

为什么NavigableSet JavaDoc如果它只是一个接口(interface),请说明性能指标?

如果理论上接口(interface)不知道其实现的细节,NavigableSet 接口(interface)如何描述:

"The performance of ascending operations and views is likely to be faster than that of descending ones."

有类似帖子here但是 ConcurrentSkipListSet 是一个实现类。

最佳答案

在 Java 中没有“真正”的方式来强制执行此类行为,因此文档用于从性能角度描述接口(interface)的预期行为。

这在两个方面很重要。

首先,作为此接口(interface)(或实现它的任何类)的用户,您应该了解此性能注意事项,并相应地编写您的代码。例如,在您引用的段落中,注意到“上升操作和 View 的性能可能比下降操作和 View 的性能更快”。这意味着如果您想遍历 NavigableSet,您应该从头到尾遍历,而不是反过来(即使两者都可以!)。

其次,作为此接口(interface)的实现者,您应该意识到这是预期,并且接口(interface)的用户可能已经编写了他们的代码来考虑此行为(如前一段所述)。这意味着,例如,您可以实现一个NavigatableSet,其中降序操作的性能优于其升序操作的性能,但您可能不应该t - 这并不是用户期望此类的工作方式。

关于java - 为什么 NavigableSet JavaDoc 声明了实现细节?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56040914/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com