为什么每个JavaDoc行都有一个星号前缀?

时间:2015-03-26 14:28:10

标签: java javadoc

JavaDoc块中每一行putting an asterisk before背后的原因是什么?虽然它似乎是鼓励和接受的惯例,而且我最终屈服于这样做,但它肯定不会使我的文档编写更快更快(尽管有助于创建它们的工具,例如作为Sublime中的DocBlockr plugin

让多行评论中的行不超过75个字符的明显好处是,您的代码可以更轻松地进行共享,而无需进行调整,并且观看者无需向右滚动即可阅读您的文档

但为什么要超越这个,并有这个额外的约定呢?左侧的填充空格可以使用可选星号前缀...为什么 每个 行?

3 个答案:

答案 0 :(得分:4)

我没有什么可以证明这一点,但我总是把它归结为世界上所有东西实际上都是黑色或白色(即黑色或绿色)的时间。在那些时候,你无法轻易区分代码和评论。

这些asterix前缀使得识别文件的部分变得非常容易,您可以放心地忽略。

答案 1 :(得分:4)

这是一种风格约定......虽然javadoc命令(显然)在某些情况下(不显着)处理前导*和前导*的情况。

Sun Java Style Guidelines描述了5.2节中的惯例。

为什么呢?那么,真正的答案只能由开发Java风格指南的人提供。

然而,我的猜测是他们认为这使得javadoc评论更加突出。


  

左边的填充空格可以使用可选的星号前缀来完成..

呃...... 是可选的。除非您的项目风格指南说明您这样做,否则您无需遵守惯例。

  

很高兴知道为什么我必须在我曾经和将要写的每一行文档上花费额外的按键或三次。

询问开发您正在使用的IDE的人: - )

答案 2 :(得分:1)

从Java 1.4开始,前导星号是可选的。

您可以省略它们以在JavaDoc注释中导出代码注释示例。

以下是文档说的内容:

  

领先的星号 - 当javadoc解析文档评论时,领先   每行上的星号(*)字符将被丢弃;空白和标签   在初始星号(*)之前的字符也被丢弃。   从1.4开始,如果省略一行上的前导星号,则   领先的空白区域不再被删除。这使您可以粘贴   将示例直接编写到<PRE>标记内的文档注释中,以及它的示例   缩进将被尊重。空间通常由解释   浏览器比标签更统一。缩进是相对于左边的   保证金(而不是分隔符/**<PRE>标记)。

http://docs.oracle.com/javase/7/docs/technotes/tools/solaris/javadoc.html#leadingasterisks