最近看源码,一些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文档
1
2
3
|
// 注释一行 / * */ 注释若干行 /** ……*/ 注释若干行,写入Javadoc文档 |
二、文档格式
写在类上的文档标注一般分为三段:
第一段:概要描述,通常用一句话或者一段话简要描述该类的作用,以英文句号结束
第二段:详细描述,通常用一段或者多段话来详细描述该类的作用,一般每段话都以英文句号作为结束
第三段:文档标注,用于标注作者,创建时间,参阅类等信息
1
2
3
|
生成文档是HTML格式。 换行<br> 分段<p>(写在段前)) |
示例
1
2
3
4
5
6
7
8
9
10
|
/** * show 方法的简述. * <p>show 方法的详细说明第一行<br> * show 方法的详细说明第二行 * @param b true 表示显示,false 表示隐藏 * @return 没有返回值 */ public void show( boolean b) { frame.show(b); } |
补充:Java的三种注释 Javadoc标记*
三种注释方法:
1、单行注释 //注释的内容
2、多行注释 /*......*/
3、/**......*/,这种方式和第二种方式相似。这种格式是为了便于javadoc程序自动生成文档。
下面介绍一下Javadoc的标记:
JavaDoc 标 记 |
解释 |
@version |
指定版本信息 |
@since |
指定最早出现在哪个版本 |
@author |
指定作者 |
@see |
生成参考其他的JavaDoc文档的连接 |
@link |
生成参考其他的JavaDoc文档,它和@see标记的区别在于,@link标记能够嵌入到注释语句中,为注释语句中的特殊词汇生成连接。 eg.{@link Hello} |
@deprecated |
用来注明被注释的类、变量或方法已经不提倡使用,在将来的版本中有可能被废弃 |
@param |
描述方法的参数 |
@return |
描述方法的返回值 |
@throws |
描述方法抛出的异常,指明抛出异常的条件 |
特别声明:
(1)javadoc针对public类生成注释文档
(2)javadoc只能在public、protected修饰的方法或者属性之上
(3)javadoc注释的格式化:前导*号和HTML标签
(4)javadoc注释要仅靠在类、属性、方法之前
下面主要举例说明第三种注释的应用:
(1)首先编写.java文件
(2)在命令行中执行以下dos命令:
javadoc *.java //根据相应的Java源代码及其说明语句生成HTML文档
//javadoc标记:是@开头的,对javadoc而言,特殊的标记。
(3)在当前目录下就会产生doc文件夹,里面有一系列的.html文件
附上代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
<span style= "font-size:18px;" >*/ /**javadoc注释的内容 */ public class Hello{ /**属性上的注释*/ public String name; /**这是main方法,是程序的入口 *@param args 用户输入参数 */ public static void main(String[] args){ System.out.println( "Hello World!" ); f1(); } /** 这是第1个方法,其作用是...*/ public static void f1(){ System.out.println( "f1()!" ); } }</span> |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
<span style= "font-size:18px;" > import java.io.IOException; /**javadoc注释内容 *@since 1.0 *@version 1.1 *@author Blue Jey *<br>链接到另一个文档{@link Hello},就这些 *see Hello */ public class HelloWorld{ /**非public,protected 属性上的注释不生成*/ public String name; /**这是main方法,是程序的入口 *@param args 用户输入的参数,是数组 *@throws IOException main方法io异常 */ public static void main(String args[]) throws IOException{ System.out.println( "hello World!" ); f1(); f2( 1 ); } /**这是第一个方法,其作用是.... *@deprecated 从版本1.2开始,不再建议使用此方法 */ public static void f1(){ System.out.println( "fl()!" ); } /**这是第二个方法,其作用是.... *@return 返回是否OK *@param i 输入参数i *@see Hello *@throws IOException io异常 */ public static String f2( int i) throws IOException{ System.out.println( "f1()!" ); return "OK" ; } } </span> |
注意:
如果源文件中有用到@version,@author标记,则在执行javadoc命令时,要加-version -author
1
|
javadoc -version -author -d doc *.java |
(其中用-version用于提取源文件中的版本信息 -author用于提取源文件中的作者信息)
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。
原文链接:https://blog.csdn.net/linton1/article/details/93733508