注释块标记
标记的顺序
块标记将采用如下顺序
…
*
* @param (classes interfaces methods and constructors only)
* @return (methods only)
* @exception (@throws is a synonym added in Javadoc )
* @author (classes and interfaces only required)
* @version (classes and interfaces only required See footnote )
* @see
* @since
* @serial (or @serialField or @serialData)
* @deprecated (see How and When To Deprecate APIs)
* …
一个块标记可以根据需要重复出现多次多次出现的标记按照如下顺序
@author 按照时间先后顺序(chronological)
@param 按照参数定义顺序(declaration)
@throws 按照异常名字的字母顺序(alphabetically)
@see 按照如下顺序
@see #field
@see #Constructor(Type Type)
@see #Constructor(Type id Type id)
@see #method(Type Type)
@see #method(Type id Type id)
@see Class
@see Class#field
@see Class#Constructor(Type Type)
@see Class#Constructor(Type id Type id)
@see Class#method(Type Type)
@see Class#method(Type id Type id)
@see packageClass
@see packageClass#field
@see packageClass#Constructor(Type Type)
@see packageClass#Constructor(Type id Type id)
@see packageClass#method(Type Type)
@see packageClass#method(Type id Type id)
@see package
标记介绍
@param标记
@param后面空格后跟着参数的变量名字(不是类型)空格后跟着对该参数的描述
在描述中第一个名字为该变量的数据类型表示数据类型的名次前面可以有一个冠词如aanthe如果是int类型的参数则不需要注明数据类型例如
…
* @param ch the char 用用来……
* @param _image the image 用来……
* @param _num 一个数字……
…
对于参数的描述如果只是一短语最好不要首字母大写结尾也不要句号
对于参数的描述是一个句子最好不要首字母大写如果出现了句号这说明你的描述不止一句话如果非要首字母大写的话必须用句号来结束句子(英文的句号)
公司内部添加ByRef和ByVal两个标记例如
* @param _image the image ByRef 用来……
说明该参数是引用传递(指针)ByVal可以省略表示是值传递
@return标记
返回为空(void)的构造函数或者函数@return可以省略
如果返回值就是输入参数必须用与输入参数的@param相同的描述信息
必要的时候注明特殊条件写的返回值
@throws 标记
@throws以前使用的是@exception
@throws的内容必须在函数的throws部分定义
@author标记
类注释标记
函数注释里面可以不出现@author
@version
类注释标记
函数注释里面可以不出现@version
@since
类注释标记
标明该类可以运行的JDK版本
例如
@since JDK
@deprecated
由于某种原因而被宣布将要被废弃的方法
/**
* @deprecated As of JDK replaced by
* setBounds
* @see #setBounds(intintintint)
*/
@link标记
语法{@link <mailto:%B@link> packageclass#member label}
Label为链接文字
packageclass#member将被自动转换成指向packageclass的member文件的URL
HTML代码的使用
在注释描述部分可以使用HTML代码
…
表示段落
* …
表示自动标号
注释示例
/**
* Graphics is the abstract base class for all graphics contexts
* which allow an application to draw onto components realized on
* various devices or onto offscreen images
* A Graphics object encapsulates the state information needed
* for the various rendering operations that Java supports This
* state information includes:
*
# * The Component to draw on
# * A translation origin for rendering and clipping coordinates
# * The current clip
# * The current color
# * The current font
# * The current logical pixel operation function (XOR or Paint)
# * The current XOR alternation color
* (see setXORMode)
*
*
* Coordinates are infinitely thin and lie between the pixels of the
* output device
* Operations which draw the outline of a figure operate by traversing
* along the infinitely thin path with a pixelsized pen that hangs
* down and to the right of the anchor point on the path
* Operations which fill a figure operate by filling the interior
* of the infinitely thin path
* Operations which render horizontal text render the ascending
* portion of the characters entirely above the baseline coordinate
*
* Some important points to consider are that drawing a figure that
* covers a given rectangle will occupy one extra row of pixels on
* the right and bottom edges compared to filling a figure that is
* bounded by that same rectangle
* Also drawing a horizontal line along the same y coordinate as
* the baseline of a line of text will draw the line entirely below
* the text except for any descenders
* Both of these properties are due to the pen hanging down and to
* the right from the path that it traverses
*
* All coordinates which appear as arguments to the methods of this
* Graphics object are considered relative to the translation origin
* of this Graphics object prior to the invocation of the method
* All rendering operations modify only pixels which lie within the
* area bounded by both the current clip of the graphics context
* and the extents of the Component used to create the Graphics object
*
* @author Sami Shaio
* @author Arthur van Hoff
* @version %I% %G%
* @since
*/
public abstract class Graphics {
/**
* Draws as much of the specified image as is currently available
* with its northwest corner at the specified coordinate (x y)
* This method will return immediately in all cases even if the
* entire image has not yet been scaled dithered and converted
* for the current output device
*
* If the current output representation is not yet complete then
* the method will return false and the indicated
* {@link ImageObserver} object will be notified as the
* conversion process progresses
*
* @param img the image to be drawn
* @param x the xcoordinate of the northwest corner
* of the destination rectangle in pixels
* @param y the ycoordinate of the northwest corner
* of the destination rectangle in pixels
* @param observer the image observer to be notified as more
* of the image is converted May be
* null
* @return true if the image is completely
* loaded and was painted successfully;
* false otherwise
* @see Image
* @see ImageObserver
* @since
*/
public abstract boolean drawImage(Image img int x int y
ImageObserver observer);
/**
* Dispose of the system resources used by this graphics context
* The Graphics context cannot be used after being disposed of
* While the finalization process of the garbage collector will
* also dispose of the same system resources due to the number
* of Graphics objects that can be created in short time frames
* it is preferable to manually free the associated resources
* using this method rather than to rely on a finalization
* process which may not happen for a long period of time
*
* Graphics objects which are provided as arguments to the paint
* and update methods of Components are automatically disposed
* by the system when those methods return Programmers should
* for efficiency call the dispose method when finished using
* a Graphics object only if it was created directly from a
* Component or another Graphics object
*
* @see #create(int int int int)
* @see #finalize()
* @see Component#getGraphics()
* @see Component#paint(Graphics)
* @see Component#update(Graphics)
* @since
*/
public abstract void dispose();
/**
* Disposes of this graphics context once it is no longer
* referenced
*
* @see #dispose()
* @since
*/
public void finalize() {
dispose();
}
}