代码要是没有注释,对读者来说就是一堆乱七八糟的字母,为了提高代码的可读性和可维护性,必须对代码进行必要的注释,这里小编整理了一下java注释规范。

(一)技巧

1:注释当前行快捷方式:ctrl+/

2:/* */  选上要注释的代码 ctrl+Shift+/

(二)在哪些地方加注释?

1:每个源文件开头都应有一组注释,包含代码的作者,时间;

2:当编写的代码较长,并且包含了多层嵌套时,花括号会比较多,比较乱,为了方便阅读,应该在某些段落结束的地方加注释,注明该闭合花括号对应的起点;

3:每个方法都必须加注释,对方法等进行注释时,注释最好放在代码上方,对变量声明进行注释时,注释最好放在行尾,但多行的行尾注释应该对齐;

4:典型算法必须有注释,代码有bug或不清楚的地方必须加注释,修改过的代码要加修改标志的注释。

(三)注释遵循哪些原则?

1:利用缩进和空行将注释与代码分隔开,是代码与注释在没有颜色提示情况下也能很容易分辨出来;

2:将注释内容与注释分隔符用一个空格隔开,便于查找注释;

3:对多行注释是尽量不用使用/*  * /,而是用多行“//”,可以避免查找配对的/*  */

(四)注释方法分类

1:单行注释-----//

单独行注释:

当注释需要单独单用一行时,使用“//” 并在注释前留一个空行,缩进情况要与下面的代码一致。一行放不下时使用多行,此时使用/*  */进行注释。

行尾注释:

在代码行的行尾加注释,一般要空8个格,且所有注释必须对齐。

2:块注释---/*内容*/

对若干行进行注释,一般放在方法之前,起引导作用,对方法和数据结构等的功能,意义进行说明

/*

*注释内容

*/

3:文档注释

注释若干行,将会形成HTML格式的代码报告,注释文档必须写在类,成员变量,成员方法,构造方法之前,例如下面是一个servlet创建后生成的一个注释文档

/**
* The doGet method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to get.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost();
}

4:类注释

在myEclipse中,可以通过快捷键Alt+Shift+J生成,注释的内容可以通过Eclipse -> Window -> Preferences -> Java -> Code Style -> Code Templates -> Comments ->      Types -> Edt 设置

格式如下:

/**
* @author ASWH
*
* @Time 2014-3-30-17:33:01 */

类的英文注释模板

/**
* CopyRright (c)2014-xxxx: <暗伤无痕 >
* Project: <项目工程名 >
* Module ID: <(模块)类编号,可以引用系统设计中的类编号>
* Comments: <对此类的描述,可以引用系统设计中的描述>
* JDK version used: <JDK1.7>
* Namespace: <命名空间>
* Author: <作者中文名或拼音缩写>
* Create Date: <创建日期,格式:YYYY-MM-DD>
* Modified By: <修改人中文名或拼音缩写>
* Modified Date: <修改日期,格式:YYYY-MM-DD>
* Why & What is modified <修改原因描述>
* Version: <版本号>
*/

中文模板

/**
* 文 件 名 :
* CopyRright (c) 2014-xxxx:
* 文件编号:
* 创 建 人:
* 日 期:
* 修 改 人:
* 日 期:
* 描 述:
* 版 本 号:
*/

7:构造函数注释

  /**

   * 构造方法 的描述

   * @param name

   *
*/

8:方法注释

/**

   * 生成随机数

   *@param numble

         随机数上限

*@return 

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

* @author ASWH

* @Time2014-3-30 17:35:29

   */

9:全局变量注释

   /** The count is the number of charactersin the String. */
private int count;

有必要是要说明变量功能,涉及到的方法等等。

10:普通变量或常量

//属性

附录:javadoc参数说明:

@see 生成文档中的“参见xx 的条目”的超链接,后边可以加上:“类名”、“完整类名”、“完整类名#方法”。可用于:类、方法、变量注释。


@param 参数的说明。可用于:方法注释。

@return 返回值的说明。可用于:方法注释。

@exception 可能抛出异常的说明。可用于:方法注释。

@version 版本信息。可用于:类注释。

@author 作者名。可用于:类注释。



@deprecated 对类或方法的说明 该类或方法不建议使用,引起不推荐使用的警告



@note  表示注解,暴露给源码阅读者的文档



@remark 表示评论,暴露给客户程序员的文档



@since 表示从那个版本起开始有了这个函数



@see  表示交叉参考

java编程规范之java注释规范的更多相关文章

  1. Java编程-第一个Java程序

    Java编程用到的IDE是Eclipse. 关于第一个Java程序实现的简单流程: (1)    下载eclipse (2)    File-New-Java Project 命名工程名字:Hello ...

  2. 开始JAVA编程的敲门砖——JAVA开发环境搭建

    从头开始的java编程--JAVA开发环境搭建 一.什么是java的开发环境? 顾名思义java的开发环境是提供并保证整个java程序开发运行的必要的环境,搭建java开发环境是开始java编程的敲门 ...

  3. python代码规范以及函数注释规范

    摘要 本文给出主Python版本标准库的编码约定.CPython的C代码风格参见​PEP7.本文和​PEP 257 文档字符串标准改编自Guido最初的<Python Style Guide&g ...

  4. JAVA编程学习之JAVA集合

    一.JAVA集合类 为了保存数量不确定的数据,以及保存具有映射关系的数据(关联数组),java提供了集合类.所有集合类位于java.util包下. 集合类就像容是器,现实生活中容器的功能,无非就是添加 ...

  5. win7中java编程工具安装 java环境变量设置

    一.下载java 官方地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u26-download-400750.html ...

  6. 200-Java语言基础-Java编程入门-005 | Java方法定义及使用

    一.方法概述和格式说明 为什么要用方法: 提高代码的复用性 什么是方法: 完成特定功能的代码块 方法的格式: 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) {     方 ...

  7. 200-Java语言基础-Java编程入门-006 | Java数组定义及使用(引用数据类型)

    一.数组概述和定义格式说明 为什么要有数组(容器): 为了存储同种数据类型的多个值 数组概念: 数组是存储同一种数据类型多个元素的集合.也可以看成是一个容器. 数组既可以存储基本数据类型,也可以存储引 ...

  8. java编程中的Java.Lang.Math类

    1. Math.PI  :表示的是圆周率常量: 2.Math.E    :表示的是普通常量(e): 3.abs()方法: 表示取绝对值 eg1: int x = Math.abs(50L);     ...

  9. 200-Java语言基础-Java编程入门-004 | Java分支与循环

    一.流程控制语句 可以控制程序的执行流程 在程序开发的过程之中一共会存在有三种程序逻辑:顺序结构.条件分支(选择)结构.循环结构. 顺序结构的定义,即:所有的程序将按照定义的代码从上往下.顺序依次执行 ...

  10. Java编程兵书

    <Java编程兵书> 基本信息 作者: 桂颖 任昱衡 丛书名: 程序员藏经阁 出版社:电子工业出版社 ISBN:9787121207419 上架时间:2013-8-26 出版日期:2013 ...

随机推荐

  1. C#使用Redis集群缓存

    C#使用Redis集群缓存 本文介绍系统缓存组件,采用NOSQL之Redis作为系统缓存层. 一.背景 系统考虑到高并发的使用场景.对于并发提交场景,通过上一章节介绍的RabbitMQ组件解决.对于系 ...

  2. cisco路由器IPSEC VPN配置(隧道模式)

    拓扑如下: R1配置hostname R1enable password cisco  crypto isakmp policy 1        #创建IKE协商策略,编号为1 encr 3des  ...

  3. Android支付接入(七):Google In-app-Billing

    前段时间有事请耽搁了,今天跟大家一起看下Google的in-app Billing V3支付.    如果没有Google Play此处附上安装Google Play的一键安装器的链接(需要Root权 ...

  4. JQuery是继prototype之后又一个优秀的Javascript库

    JQuery是继prototype之后又一个优秀的Javascript库.它是轻量级的js库 ,它兼容CSS3,还兼容各种浏览器(IE 6.0+, FF 1.5+, Safari 2.0+, Oper ...

  5. 面对多个互斥量的加锁策略:"试加锁-回退"算法/固定加锁层次

    有时一个互斥量是不够的: 比如: 当多个线程同时访问一个队列结构时,你需要2个互斥量,一个用来保护队列头,一个用来保护队列元素内的数据. 当为多线程建立一个树结构时,你可能需要为每个节点设置一个互斥量 ...

  6. Android仿WIN8系统磁贴点击下沉倾斜效果

    ※效果 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGluZ2xvbmd4aW4yNA==/font/5a6L5L2T/fontsize/400/fil ...

  7. cowboy rest

    REST Flowcharts 这章节将通过一些列不同的流程图来介绍REST处理状态机. 一个请求主要有四条路线,一个是方法OPTIONS. 一个是方法GET和HEAD.一个是PUT.POST和PAT ...

  8. httpcomponents-client-ga(4.5)

    http://hc.apache.org/httpcomponents-client-ga/tutorial/html/   Chapter 1. Fundamentals Prev     Next ...

  9. Ubuntu12.10 下搭建基于KVM-QEMU的虚拟机环境(十三)

    今天我们实验libvirt提供的快照功能,快照可以用于系统恢复,防止安装了某些软件或中病毒等情况导致系统损毁的情况. 一.快照类型 1)        磁盘快照 内部的:快照驻留在原来的镜像文件内部 ...

  10. Python的包管理

    0.Python的包管理 在刚开始学习Python的时候比较头疼各种包的管理,后来搜到一些Python的包管理工具,比如setuptools, easy_install, pip, distribut ...