javadoc基础

Javadoc

 

一.JavaDoc介绍

Javadoc是Sun公司提供的一个技术,它从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。也就是说,只要在编写程序时以一套特定的标签作注释,在程序编写完成后,通过Javadoc就可以同时形成程序的开发文档。

 

比如官网JDK1.7API

 

.注释的种类

    /**

     * 注释种类3

     * @param args

     */

    public static void main(String[] args) {

        // 注释种类1

        /* 注释种类2 */

    }

// 1种注释,双斜线,不支持换行

/* 2种注释,支持换行,这里面的都是注释 *

/**

 * 3种注释,在斜线后,有两个星号,这样的注释,便是Javadoc文档注释

 */

/** Javadoc文档注释也可以不换行 */

 

tag

描述

例子

@author

用于classinterface的声明中,表示作者

@author 作者名

@param

用于构造函数及函数的参数说明

@param 参数名 参数说明

@return

表示函数的返回值

 

@return 函数返回值说明

@throws

标识出方法可能抛出的异常

 

@throws RuntimeException 描述

@exception

@throws一样,官网推荐用@throws

 

@see

链接目标,@see Tag只能顶格写

@see 其他类

{@link}

@see类似,但可以放在任意位置. 插入一个超文本链接

{@link 其他类名}

@since text

参数text包含某个类或者某个类成员开始可用的软件版本号

@since 2.02.0版本开始加入的新功能

@version

描述版本

@version info

@deprecated

指明已弃用的类型或者方法

 

{@value}

显示常量的值,该常量必须是final属性

 

{@code }

以代码字体显示文本

 

{@docRoot}

指定生成文档的根目录,当需要将一个外部文件放在所生成的所有页面中时,这个标签非常有用

 

 

@author

默认Javadoc是不显示@author Tag的内容的。

如果打算在Javadoc里显示@author的内容,可以在生成Javadoc的时候,添加参数 -tag author:a:”Author:”

@param

一般类中支持泛型时会通过@param来解释泛型的类型

/**

* @param the type of elements in this list

*/

public interface List extends Collection {}

 

@return

Tag @return用在返回值为void的函数上或者构造函数,@return会被忽略

跟返回值的描述

/**

* @return {@code true} if the {@code String} is not {@code null}, its

*/

public static boolean hasText(@Nullable String str){}

 

@see

@see “string”

如果在@see后面添加一段文本字符串,则不会生成连接。Javadoc 工具会根据文本前的双引号来进行识别 
例如: 
@see “The Java Programming Language” 

生成的结果就是

See Also:

     "The Java Programming Language"

 

@see lable

跳转到相应连接

@see package.class#member label

@see com.cloudansys.common.utils.TimeUtil#format

 

跳转到相应class或者其class的参数

@see 的查找

如果在class内,可以不加包和类的限定名

/**

  * @see  #field

  * @see  #method(Type, Type,...)

  */

在当前package或引用的package内查找

 

/**

  * @see  Class#field

  * @see  Class#method(Type, Type,...)

  */

在其他package内查找

 

/**

  * @see  package.Class#field

  * @see  package.Class#method(Type, Type,...)

  * @see package.Class

  */

@see Tag内的名称,的查找次序为:

 

1. 当前classinterface

2. enclosing classes

3. 父类或父接口

4. 当前包

5. import次序,查找import的包,classinterface

{@value}

{@value} 在生成的doc里,会用变量的真实值替换{@value}出现的地方。有两种用法:

 

一种是没有参数,只能用在final修饰的成员变量上

 

/**

 * The value of this constant is {@value}.

 */

public static final String SCRIPT_START = "

你可能感兴趣的:(技术)