概述
Java只有3种注释方式。
//
,单行注释/* */
,块注释说明注释,
@author
,@version
等
说明注释允许你在程序中嵌入关于程序的信息。你可以使用javadoc工具软件来生成信息,并输出到HTML文件中。
Javadoc 标签
javadoc工具软件识别以下标签
标签 | 描述 |
---|---|
@author |
标示一个类的作者 |
@deprecated |
标识一个过期的类或成员 |
{@docRoot} |
指明当前文档跟目录的路径 |
@exception |
指明一个类抛出的异常 |
@throws |
和@exception 一样 |
{@inheritDoc} |
从直接父类继承的注释 |
{@link} |
插入一个到另一个主题的链接 |
{@linkplain} |
插入一个到另一个主题的链接,但该链接显示纯文本字体 |
@param |
说明一个方法的参数 |
@return |
说明返回值类型 |
@see |
指定一个到另一个主题的链接 |
@serial |
说明一个序列化属性 |
@serialData |
说明通过 writeObject() 和 writeExternal() 方法写的数据 |
@serialField |
说明一个ObjectStreamField组件 |
@since |
标记当引入一个特定的变化时 |
{@value} |
显示常亮的值,必须是static属性 |
@version |
指定类的版本号 |
文档注释
在开始的/**
之后,第一行或几行是关于类、变量和方法的主要描述。
之后,你可以包一个或多个各种各样的@标签。每一个@标签必须在一个新行的开始。
多个相同类型的标签应该放成一组。例如,如果你有三个@see
标签,可以将它们一个接一个的放在一起。
/**
* 类描述
* @author panda
* @version 1.2
*/
...
Javadoc 输出
Javadoc 工具将你Java程序的源代码作为输入,输出一些包含你程序注释的HTML文件。
每一个类的信息将在独自的HTML文件里。Javadoc也可以输出继承的树形结构和索引。
由于Javadoc的实现不同,工作也可能不同,你需要检查你的Java开发系统的版本等细节,选择合适的Javadoc版本。
实例
package com.coder4j.jse.javadoc;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/**
* 输入一个数,输出其平方数。
*
* @author panda
* @version 1.2
*/
public class SquareNum {
/**
* 输出平方值。
*
* @param num
* 待求平方数
* @return 平方值
*/
public double square(double num) {
return num * num;
}
/**
* 用户输入一个数
*
* @return 返回用户输入的数
* @exception IOException
* 可能抛出的异常
* @see IOException
*/
public double getNumber() throws IOException {
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader inData = new BufferedReader(isr);
String str;
str = inData.readLine();
return (new Double(str)).doubleValue();
}
/**
* 入口主函数
*
* @param args
* Unused.
* @return Nothing.
* @exception IOException
* On input error.
* @see IOException
*/
public static void main(String args[]) throws IOException {
SquareNum ob = new SquareNum();
double val;
System.out.println("请输入一个数: ");
val = ob.getNumber();
val = ob.square(val);
System.out.println("平方值是: " + val);
}
}
我在eclipse里写了这个类,右键export,选择Java/javadoc 然后按提示确认,控制台输出:
正在加载程序包com.coder4j.jse.javadoc的源文件...
正在构造 Javadoc 信息...
标准 Doclet 版本 1.7.0_75
正在构建所有程序包和类的树...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/com/coder4j/jse/javadoc/SquareNum.html...
/Users/panda/Documents/lunaspace/code4j/src/com/coder4j/jse/javadoc/SquareNum.java:52: 警告 - 不能在返回类型为空的方法中使用 @return 标记。
正在生成/Users/panda/Documents/lunaspace/code4j/doc/com/coder4j/jse/javadoc/package-frame.html...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/com/coder4j/jse/javadoc/package-summary.html...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/com/coder4j/jse/javadoc/package-tree.html...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/constant-values.html...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/com/coder4j/jse/javadoc/class-use/SquareNum.html...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/com/coder4j/jse/javadoc/package-use.html...
正在构建所有程序包和类的索引...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/overview-tree.html...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/index-files/index-1.html...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/index-files/index-2.html...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/index-files/index-3.html...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/index-files/index-4.html...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/deprecated-list.html...
正在构建所有类的索引...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/allclasses-frame.html...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/allclasses-noframe.html...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/index.html...
正在生成/Users/panda/Documents/lunaspace/code4j/doc/help-doc.html...
1 个警告
默认在当前项目下新增doc目录
doc/
|--com
|--index-files
|--resources
|--allclasses-frame.html
|--allclasses-noframe.html
|--constant-values.html
|--deprecated-list.html
|--help-doc.html
|--index.html
|--overview-tree.html
|--package-list
|--stylesheet.css
可以直接访问index.html
,你会看到类似这样的页面。
不同的Javadoc版本可能稍有不同哟。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。