202

@see有人可以告诉我 javadoc和之间的区别{@link}吗?

或者更确切地说,什么时候使用它们中的哪一个?

4

4 回答 4

232

这方面的官方指南非常明确。

功能上的区别是:

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

在我看来,{@link}当您在描述中真正使用类、字段、构造函数或方法名称时,最好使用它。用户将能够点击进入您所链接内容的 javadoc。

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

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

我的这个观点是基于随机检查标准库中各种各样的东西的文档。

于 2012-04-10T22:15:14.040 回答
50

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

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

于 2012-04-10T22:42:05.293 回答
6

标签与标签@see有点不同@link
在某些方面受到限制,而在其他方面更灵活:

不同的 JavaDoc 链接类型 不同的 JavaDoc 链接类型

  1. 显示成员名称以便更好地学习,并且是可重构的;通过重构重命名时名称将更新
  2. 可重构和可定制;显示您的文本而不是成员名称
  3. 显示名称,可重构
  4. 可重构、可定制
  5. 一个相当平庸的组合,即:
  • 可重构、可定制并保留在“另请参阅”部分
  • 在 Eclipse 悬停中很好地显示
  • 生成时显示链接标记及其格式
  • 使用多个@see项目时,描述中的逗号会使输出混乱
  1. 完全违法;在生成器中导致意外内容和非法字符错误

请参阅以下结果:

不同链接类型的 JavaDoc 生成结果 不同链接类型的 JavaDoc 生成结果

此致。

于 2020-12-30T18:40:13.603 回答
5

还有另一个参考(弃用部分)相同的官方文档更喜欢(自 Java 1.2 起):{@link}@see

对于 Javadoc 1.2 及更高版本,标准格式是使用 @deprecated 标记和内联 {@link} 标记。这会在您想要的位置创建内嵌链接。例如:

对于 Javadoc 1.1,标准格式是创建一对 @deprecated 和 @see 标记。例如:

于 2018-09-27T06:57:43.313 回答