java文本注释_Java 文档注释

代码注释是架起程序设计者与程序阅读者之间的通信桥梁,最大限度的提高团队开发合作效率。也是程序代码可维护性的重要环节之一。因此我们不是为写注释而写注释。在实际开发中使用的代码注释规范,方便开发者的交流沟通。

原则:

1)注释形式统一

在整个应用程序中,使用具有一致的标点和结构的样式来构造注释。如果在其它项目中发现它们的注释规范与这份文档不同,按照这份规范写代码,不要试图在既成的规范系统中引入新的规范。

2)注释内容准确简洁

Java 文档// 注释一行

/* ...... */ 注释若干行

/** ...... */ 注释若干行,并写入 javadoc 文档

通常这种注释的多行写法如下:/**

* .........

* .........

*/

javadoc -d 文档存放目录 -author -version 源文件名.java

这条命令编译一个名为"源文件名.java"的 java 源文件,并将生成的文档存放在"文档存放目录"指定的目录下,生成的文档中 index.html 就是文档的首页。-author 和 -version 两个选项可以省略。

文档注释的格式

1. 文档和文档注释的格式化

生成的文档是 HTML 格式,而这些 HTML 格式的标识符并不是 javadoc 加的,而是我们在写注释的时候写上去的。比如,需要换行时,不是敲入一个回车符,而是写入
,如果要分段,就应该在段前写入

。文档注释的正文并不是直接复制到输出文件 (文档的 HTML 文件),而是读取每一行后,删掉前导的 * 号及 * 号以前的空格,再输入到文档的。实例:/**

* This is first line. 

***** This is second line. 

This is third line.

*/

2. 文档注释的三部分,先举例如下:/**

* show 方法的简述.

show 方法的详细说明第一行

* show 方法的详细说明第二行

* @param b true 表示显示,false 表示隐藏

* @return 没有返回值

*/

public void show(boolean b) {

frame.show(b);

}

第一部分是简述。文档中,对于属性和方法都是先有一个列表,然后才在后面一个一个的详细的说明。简述部分写在一段文档注释的最前面,第一个点号 (.) 之前 (包括点号)。换句话说,就是用第一个点号分隔文档注释,之前是简述,之后是第二部分和第三部分。

第二部分是详细说明部分。该部分对属性或者方法进行详细的说明,在格式上没有什么特殊的要求,可以包含若干个点号。* show 方法的简述.

show 方法的详细说明第一行

* show 方法的详细说明第二行

简述也在其中。这一点要谨记!

第三部分是特殊说明部分。这部分包括版本说明、参数说明、返回值说明等。* @param b true 表示显示,false 表示隐藏

* @return 没有返回值

使用 javadoc 标记

javadoc 标记由"@"及其后所跟的标记类型和专用注释引用组成,其中javadoc 标记有如下:@author 标明开发该类模块的作者

@version 标明该类模块的版本

@see 参考转向,也就是相关主题

@param 对方法中某参数的说明

@return 对方法返回值的说明

@exception 对方法可能抛出的异常进行说明

@author 作者名

@version 版本号

其中,@author 可以多次使用,以指明多个作者,生成的文档中每个作者之间使用逗号 (,) 隔开。@version 也可以使用多次,只有第一次有效

使用 @param、@return 和 @exception 说明方法

这三个标记都是只用于方法的。@param 描述方法的参数,@return 描述方法的返回值,@exception 描述方法可能抛出的异常。它们的句法如下:@param 参数名参数说明

@return 返回值说明

@exception 异常类名说明

javadoc 命令

用法:javadoc [options] [packagenames] [sourcefiles]

选项:-public 仅显示 public 类和成员

-protected 显示 protected/public 类和成员 (缺省)

-package 显示 package/protected/public 类和成员

-private 显示所有类和成员

-d  输出文件的目标目录

-version 包含 @version 段

-author 包含 @author 段

-splitindex 将索引分为每个字母对应一个文件

-windowtitle  文档的浏览器窗口标题

javadoc 编译文档时可以给定包列表,也可以给出源程序文件列表。例如在 CLASSPATH 下有两个包若干类如下:yoodb.Editor

yoodb.Test

yoodb.editor.ECommand

yoodb.editor.EDocument

yoodb.editor.EView

可以直接编译类:javadoc yoodb\Test.java yoodb\Editor.java yoodb\editor\ECommand.java yoodb\editor\EDocument.java yoodb\editor\EView.java

也可以是给出包名作为编译参数,如:javadoc yoodb yoodb.editor

注释条件

1. 基本注释(必须加)

a)类(接口)的注释

b)构造函数的注释

c)方法的注释

d)全局变量的注释

e)字段/属性的注释

备注:简单的代码做简单注释,注释内容不大于10个字即可,另外,持久化对象或VO对象的getter、setter方法不需加注释。具体的注释格式请参考下面举例。

特殊必加注释(必须加)

a)典型算法必须有注释

b)在代码不明晰处必须有注释

c)在代码修改处加上修改标识的注释

d)在循环和逻辑分支组成的代码中加注释

e)为他人提供的接口必须加详细注释

备注:此类注释格式暂无举例。具体的注释格式自行定义,要求注释内容准确简洁。

注释格式

1)单行(single-line)注释:“//……”

2)块(block)注释:“/*……*/”

3)文档注释:“/**……*/”

4)javadoc 注释标签语法

@author   对类的说明 标明开发该类模块的作者

@version   对类的说明 标明该类模块的版本

@see     对类、属性、方法的说明 参考转向,也就是相关主题

@param    对方法的说明 对方法中某参数的说明

@return   对方法的说明 对方法返回值的说明

@exception  对方法的说明 对方法可能抛出的异常进行说明

参考举例:

1.   类(接口)注释

实例:/**

* 类的描述

* @author blog.yoodb.com

* @Time 2017-07-20 12:49:01

*

*/

public classTest extends Button {

……

}

2.   构造方法注释

实例:public class Test extends Button {

/**

* 构造方法 的描述

* @param name

*       按钮的上显示的文字

*/

public Test(String name){

……

}

}

3.   方法注释

实例:public class Test extends Button {

/**

* 为按钮添加颜色

*@param color

按钮的颜色

*@return

*@exception  (方法有异常的话加)

* @author blog.yoodb.com

* @Time 2017-07-20 12:49:01

*/

public voidaddColor(String color){

……

}

}

4.   全局变量注释

实例(String 源码):public final class String

implements Java.io.Serializable, Comparable,CharSequence

{

/** The value is used for characterstorage. */

private final char value[];

/** The offset is the first index of thestorage that is used. */

private final int offset;

/** The count is the number of charactersin the String. */

private final int count;

/** Cache the hash code for the string */

private int hash; // Default to 0

……

}

5.   字段/属性注释

实例:public class EmailBody implements Serializable{

private String id;

private String senderName;//发送人姓名

private String title;//不能超过120个中文字符

private String content;//邮件正文

private String attach;//附件,如果有的话

private String totalCount;//总发送人数

private String successCount;//成功发送的人数

private Integer isDelete;//0不删除 1删除

private Date createTime;//目前不支持定时 所以创建后即刻发送

privateSet EmailList;

……

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值