类似C/C++,Java也支持单行和多行注释
注释中的字符在编译时会被忽略
注释通常为类、变量和方法的主要描述
单行注释
// 注释内容
多行注释
/* 注释内容 */
/*
* 注释内容
*/
文档注释
/**
* 注释内容
*/
文档注释可使用javadoc工具来生成信息,并输出到HTML文件中,方便记录程序信息
文档注释中可包含一个或多个@标签,每个@标签都在新的一行开始
多个相同的标签应一个接一个的放在一起组成一组
实例:SquareNum.java
import java.io.*;/*** 这个类演示了文档注释
*@authorAyan Amhed
*@version1.2*/
public classSquareNum {/*** This method returns the square of num.
* This is a multiline description. You can use
* as many lines as you like.
*@paramnum The value to be squared.
*@returnnum squared.*/
public double square(doublenum) {return num *num;
}/*** This method inputs a number from the user.
*@returnThe value input as a double.
*@exceptionIOException On input error.
*@seeIOException*/
public double getNumber() throwsIOException {
InputStreamReader isr= newInputStreamReader(System.in);
BufferedReader inData= newBufferedReader(isr);
String str;
str=inData.readLine();returnDouble.valueOf(str.toString());
}/*** This method demonstrates square().
*@paramargs Unused.
*@exceptionIOException On input error.
*@seeIOException*/
public static void main(String args[]) throwsIOException
{
SquareNum ob= newSquareNum();doubleval;
System.out.println("Enter value to be squared: ");
val=ob.getNumber();
val=ob.square(val);
System.out.println("Squared value is " +val);
}
}
使用javadoc工具处理SquareNum.java文件
$ javadoc SquareNum.java
正在加载源文件SquareNum.java...
正在构造 Javadoc 信息...
标准 Doclet 版本 11.0.1
正在构建所有程序包和类的树...
正在生成./SquareNum.html...
正在生成./package-summary.html...
正在生成./package-tree.html...
正在生成./constant-values.html...
正在构建所有程序包和类的索引...
正在生成./overview-tree.html...
正在生成./index-all.html...
正在构建所有类的索引...
正在生成./allclasses-index.html...
正在生成./allpackages-index.html...
正在生成./deprecated-list.html...
正在构建所有类的索引...
正在生成./allclasses.html...
正在生成./allclasses.html...
正在生成./index.html...
正在生成./help-doc.html...
处理之后,SquareNum类的注释可在SquareNum.html中找到
javadoc工具识别的标签有:
标签描述示例
@author
标识一个类的作者
@author description
@deprecated
指名一个过期的类或成员
@deprecated description
{@docRoot}
指明当前文档根目录的路径
Directory Path
@exception
标志一个类抛出的异常
@exception exception-name explanation
{@inheritDoc}
从直接父类继承的注释
Inherits a comment from the immediate surperclass.
{@link}
插入一个到另一个主题的链接
{@link name text}
{@linkplain}
插入一个到另一个主题的链接,但是该链接显示纯文本字体
Inserts an in-line link to another topic.
@param
说明一个方法的参数
@param parameter-name explanation
@return
说明返回值类型
@return explanation
@see
指定一个到另一个主题的链接
@see anchor
@serial
说明一个序列化属性
@serial description
@serialData
说明通过writeObject( ) 和 writeExternal( )方法写的数据
@serialData description
@serialField
说明一个ObjectStreamField组件
@serialField name type description
@since
标记当引入一个特定的变化时
@since release
@throws
和 @exception标签一样.
The @throws tag has the same meaning as the @exception tag.
{@value}
显示常量的值,该常量必须是static属性。
Displays the value of a constant, which must be a static field.
@version
指定类的版本
@version info