从技术上讲,对于编译器而言,它没有任何区别。
但是,集合不能有重复的条目,而集合可以有。这是值得了解的。
因此,参数,返回值和发生的情况的方法语义可能意味着不同的含义。重新声明还可以使javadoc更加具体。例如add():
设置:@return如果此设置尚未包含指定的元素,则为true
集合:@return如果此集合由于调用而发生更改,则返回true
set的含义更具体。
即使对于不具体的方法,它也使javadoc变得更好。例如,对于size():“返回此集合中的元素数(其基数)。”
这更接近人们习惯于数学集合的语言所能理解的语言。
API文档对此进行了总结:
“除从Collection接口继承的那些规定外,Set接口还对所有构造函数的协定以及add,equals和hashCode方法的协定附加了其他规定。其他继承方法的声明也为方便起见,将其包括在此处。(这些声明所附带的规范是针对Set接口定制的,但不包含任何其他规定。)”
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)