阿里巴巴Java开发手册之注释规约与Javadoc标签和Javadoc注释规范

最近看源码,一些Javadoc常见的注释整理下

Javadoc是Sun公司提供的一个技术,从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。


Javadoc命令是用来生成自己的API文档,使用方式:

javadoc 源文件名.java
javadoc -d 文档存放目录 源文件名.java
通过IDEA生成Javadoc : Tools -> Generate JavaDoc

javadoc标签

标签

说明

@author

作者标识

@version

版本号

@return

对函数返回值的描述

@deprecated

标识过期API(为了保证兼容性,仍可用,但不推荐用)

@throws

构造函数或方法会抛出的异常

@exception

同@throws

@see

引用,查看相关的内容,如类,方法,变量等,必须顶头写

{@link 包.类#成员}

引用,同@see,但可写在任意位置

{@value}

对常量注释,如果其值包含在文档中,通过改标签引用常量的值

{@code}}

{@code text}将文本标记为code,会被解析成text} ,在Javadoc成只要涉及到类名或者方法名,都需要使用@code进行标记

@param

说明方法的参数

@inheritDoc

用于继承父类中的Javadoc,父类的文档注释,被继承到了子类

javadoc注释规范

一、 Java文档

// 注释一行
/ *    */ 注释若干行  
/**   ……*/  注释若干行,写入Javadoc文档

二、文档格式
写在类上的文档标注一般分为三段:

  • 第一段:概要描述,通常用一句话或者一段话简要描述该类的作用,以英文句号结束
  • 第二段:详细描述,通常用一段或者多段话来详细描述该类的作用,一般每段话都以英文句号作为结束
  • 第三段:文档标注,用于标注作者,创建时间,参阅类等信息
生成文档是HTML格式。
换行<br>
分段<p>(写在段前))

示例

/** 
* show 方法的简述.
* <p>show 方法的详细说明第一行<br> 
* show 方法的详细说明第二行 
* @param b true 表示显示,false 表示隐藏 
* @return 没有返回值 
*/ 
public void show(boolean b) {
    frame.show(b);
    }

阿里巴巴Java开发手册之注释规约

  1. 类,类属性、类方法的注释必须使用Javadoc规范,使用/*内容/格式,不得使用//XX方式。
  2. 所有的抽象方法(包括接口中的方法)必须要用Javadoc注释,除了返回值、参数、异常说明外,还必须指出该方法做什么事情,实现什么功能。
  3. 所有的类都必须添加创建者和创建日期。
  4. 方法内部的单行注释,在被注释语句上方另起一行,使用//注释。方法内部的多行注释,使用/* */注释,注意与代码对齐。
  5. 所有的枚举类型字段必须要有注释,说明每个数据项的用途。
  6. 与其用不熟练的英文来注释,不如用中文注释把问题说清楚。专有名词与关键字保持英文原文即可。
  7. 在修改代码的同时,要对注释进行相应的修改,尤其是参数,返回值,异常,核心逻辑等的修改。
  8. 谨慎注释掉代码。要在上方详细说明,而不是简单的注释掉。如果无用,则删除。
  9. 对于注释的要求:
    1)能够准确反映设计思想和代码逻辑。
    2)能够描述业务含义,使其他程序员能够迅速了解代码背后的信息。完全没有注释的大段代码对于阅读者形同天书;注释是给自己看的,应做到即使间隔很长时间,也能清晰理解当时的思路,注释也是给继任者看的,使其能够快速接替自己的工作。
  10. 好的命名、代码结构是自解释的,注释力求精简准确、表达到位。避免出现注释的一个极端:过多过滥的注释,因为代码的逻辑一旦修改,修改注释是相当大的负担。
  11. 特殊注释标记,请标明标记人与标记时间。注意及时处理这些标记,通过标记扫描经常处理此类标记。有时候线上故障就来源于这些标记处的代码。