为何要使用注释
一个老生常谈的问题,只要代码不仅仅是给自己看,想要别人看,那么一个方法就必须有注释!即使给自己看,那么也需要注释,因为我们要做规范的开发,我们需要严禁的对待自己的代码。
还有重要的一点儿,就是方法只有有了注释才能生成一个很友好的javadoc。否则你只会看到一个光秃秃的public方法定义,如下图的parse的方法
图1 有注释和无注释的方法比较
使用Java的注释
Java提供了3种用于程序的注释。
- 1.单行注释://…到行尾
- 2.多行注释:/*…*/
3.归档(Javadoc)注释:/**…*/
多行注释可以跨越多行,以/*开头,*/结尾,例如:
/* a method
Test
Hello
*/
注意: 如果多行注释内容出现注释起始符号,例如//、/*、//*等,
编译器视为普通字符,并不作任何处理。
但是多行注释不能嵌套,如下注释会引发错误:
/* hello
Test
/* a sub */
*/
JAVA注释在软件开发中的使用
1. 文件头注释
文件头注释以/*开始,以*/结束,需要注明该文件的创建时间、文件名、命名空间信息。例如:
/* Created on 2017-01-17
* File Test.java
* Package com.june.pudo.bs
* Create Date:2017-01-17
*/
2. 类、接口注释
类、接口的注释采用/**...*/,描述部分用来书写该类的作用或者相关信息,块标记部分必须注明作者个版本。注释代码示例如下:
/** Title:XXXX DRIVER 3.0
* Description:XXXX DRIVER 3.0
* Copyright:Copyright(c) 2017
* Company:XXXX 有限公司
*
* @author June
* @version 3.0
*/
如下示例也很常见:
/**
* A class representing a window on the screen
* For example:
*
* Window win = new Window(parent);
* win.show();
*
* @author June
* @version %I%,%G%
* @see java.awt.BaseWindow
* @see java.awt.Button
*/
class Window extends BaseWindow{
...
}
3. 构造函数注释
构造函数注释采用/**...*/,描述部分注明构造函数的作用,不一定有块标记部分。
无块标记的示例如下:
/**
* 默认构造函数
*/
带块标记的示例如下:
/**
* 带参数构造函数,初始化模式名、变量名称和数据源类型
* @param schema
* Ref 模式名
* @param name
* Ref 变量名称
* @param type
* by Val 数据源类型
*/
4. 域注释
域注释可以出现在注释文档里面,也可以不出现在注释文档里面。用/**...*/的域注释将会被认为是注释文档而出现在最终生成的HTML报告里面(Javadoc),而使用/*...*/的注释则会被忽略掉。例如:
/**
* @作者 XXX
* @创建时间 Jan 17,2017 16:40:30 AM
*/
上面的注释会生成下面的HTML报告:
@作者
XXX
@创建时间
Jan 17,2017 16:40:30 AM
5. 方法注释
方法注释采用/**...*/,描述部分注明方法的功能,块标记部分注明方法的参数,返回值,异常信息。例如:
/**
* 设置是否有外码约束
*
* @param conn
* Connection 与数据库的连接
*/