Javadoc注释规范
Javadoc虽然是Sun公司为Java文档自动生成设计的,可以从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。(Javadoc is a documentation generator from Sun Microsystems for generating API documentation in HTML format from Java source code. -- 维基百科)但是Javadoc的注释也符合C的注释格式,而且doxyen也支持该种风格的注释,所以简单学习一下。以下的内容来自官方文档,维基百科和一些网上的文档。
官方文档:http://download.oracle.com/javase/1.4.2/docs/tooldocs/windows/javadoc.html
维基百科:http://en.wikipedia.org/wiki/Javadoc
Javadoc的注释结构和C类似。都以/* 注释 */这种结构。
Javadoc的内容很多,我只是先学习一下Overview注释,类注释和方法注释,其他的以后再学。先贴出几段Java的示例代码。
Overview:
/** * @author Firstname Lastname <address @ example.com> * @version 2010.0331 (E.g. ISO 8601 YYYY.MMDD) * @since 1.6 (The Java version used) */ public class Test { // class body }
Class:
/** * A class representing a window on the screen. * For example: * <pre> * Window win = new Window(parent); * win.show(); * </pre> * * @author Sami Shaio * @version %I%, %G% * @see java.awt.BaseWindow * @see java.awt.Button */ class Window extends BaseWindow { ... }
Method:
/** * Returns the character at the specified index. An index * ranges from <code>0</code> to <code>length() - 1</code>. * * @param index the index of the desired character. * @return the desired character. * @exception StringIndexOutOfRangeException * if the index is not in the range <code>0</code> * to <code>length()-1</code>. * @see java.lang.Character#charValue() */ public char charAt(int index) { ... }
其实这些注释形式都差不多,主要是tag不同下面介绍一下tag及含义。
Overview Tags | |||||||
---|---|---|---|---|---|---|---|
|
Class/Interface Tags | |||||||||
---|---|---|---|---|---|---|---|---|---|
|
Method/Constructor Tags | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
Tag & Parameter | Usage | Applies to | Since |
---|---|---|---|
@author name | Describes an author. 描述作者 |
Class, Interface | |
@version version | Provides version entry. Max one per Class or Interface. 版本条目,每个类或接口最多有一个 |
Class, Interface | |
@since since-text | Describes since when this functionality has existed. 描述这个功能块从何时有的 |
Class, Interface, Field, Method | |
@see reference | Provides a link to other element of documentation. 提供链接到其他文档元素的链接 |
Class, Interface, Field, Method | |
@param name description | Describes a method parameter. 描述一个参数 |
Method | |
@return description | Describes the return value. 描述返回值 |
Method | |
@exception classname description @throws classname description |
Describes an exception that may be thrown from this method. 描述该方法可能抛出的异常 |
Method | |
@deprecated description | Describes an outdated method. 描述一个过期的方法 |
Method | |
{@inheritDoc} | Copies the description from the overridden method. 从复写方法出拷贝来得描述 |
Overriding Method | 1.4.0 |
{@link reference} | Link to other symbol. 连到其他的引用 |
Class, Interface, Field, Method | |
{@value} | Return the value of a static field. 返回一个静态作用域的值 |
Static Field | 1.4.0 |