最近看源码,一些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