在 Set 的 java 文档中时它在方法规范中说 Optional Operation
例如(我强调的)
add(E e)
Adds the specified element to this set if it is not already present (optional operation).
这里的optional是什么意思?
如果我使用 SUN/Oracle 以外的 JVM,该操作可能不会由该 Java 实现提供?
最佳答案
Set
是一个接口(interface)。实现该接口(interface)的类不一定需要为可选操作提供实现。
我认为那些可选操作可以追溯到通用 Collection
接口(interface),其中操作是可选的,这对某些类型的集合没有意义。例如。 add
是一种对某种只读集合没有真正用处的操作。它在 Javadoc 中明确说明,因此它成为所有集合类提供的一部分,但使用它的人知道,给定 some 集合,他们并不完全知道,可能是该方法只是抛出一个 UnsupportedOperationException
。
关于java - 例如 Set#add(E) 的 Javadoc 中的 "optional operation"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8375653/