有人能告诉我javadoc @see和{@link}的区别吗?

或者更确切地说,何时使用它们中的哪一种?


当前回答

官方的指导方针非常明确。

功能上的区别是:

{@link}是一个内联链接,可以放置在你喜欢的任何地方 @see创建自己的section

在我看来,当你在描述中使用类、字段、构造函数或方法名时,{@link}是最好的选择。用户将能够点击到您所链接的javadoc。

我在两种情况下使用@see注释:

一些非常相关但在描述中没有提到的东西。 我在描述中多次提到同一件事,它被用作多个相同链接的替代品。

我基于随机检查标准库中各种各样的文档得出了这个观点。

其他回答

还有另一个参考(弃用部分)相同的官方文档更倾向于{@link}而不是@see(自Java 1.2以来):

对于Javadoc 1.2及更高版本,标准格式是使用@deprecated 标签和内嵌的{@link}标签。这将创建内联链接,其中 你想要它。例如: 对于Javadoc 1.1,标准格式是创建一对@deprecated和@see标记。例如:

@see在Javadocs中创建一个隔离行。{@link}用于嵌入文本。

当它是一个相关实体时,我使用@see,但在说明文中我没有提到它。当存在紧密耦合时,我在文本中使用链接,或者(我觉得)读者可能会从导航提示中受益,例如,您需要直接引用它。

官方的指导方针非常明确。

功能上的区别是:

{@link}是一个内联链接,可以放置在你喜欢的任何地方 @see创建自己的section

在我看来,当你在描述中使用类、字段、构造函数或方法名时,{@link}是最好的选择。用户将能够点击到您所链接的javadoc。

我在两种情况下使用@see注释:

一些非常相关但在描述中没有提到的东西。 我在描述中多次提到同一件事,它被用作多个相同链接的替代品。

我基于随机检查标准库中各种各样的文档得出了这个观点。