java编程规范之java注释规范
代码要是没有注释,对读者来说就是一堆乱七八糟的字母,为了提高代码的可读性和可维护性,必须对代码进行必要的注释,这里小编整理了一下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注释规范的更多相关文章
- Java编程-第一个Java程序
Java编程用到的IDE是Eclipse. 关于第一个Java程序实现的简单流程: (1) 下载eclipse (2) File-New-Java Project 命名工程名字:Hello ...
- 开始JAVA编程的敲门砖——JAVA开发环境搭建
从头开始的java编程--JAVA开发环境搭建 一.什么是java的开发环境? 顾名思义java的开发环境是提供并保证整个java程序开发运行的必要的环境,搭建java开发环境是开始java编程的敲门 ...
- python代码规范以及函数注释规范
摘要 本文给出主Python版本标准库的编码约定.CPython的C代码风格参见PEP7.本文和PEP 257 文档字符串标准改编自Guido最初的<Python Style Guide&g ...
- JAVA编程学习之JAVA集合
一.JAVA集合类 为了保存数量不确定的数据,以及保存具有映射关系的数据(关联数组),java提供了集合类.所有集合类位于java.util包下. 集合类就像容是器,现实生活中容器的功能,无非就是添加 ...
- win7中java编程工具安装 java环境变量设置
一.下载java 官方地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u26-download-400750.html ...
- 200-Java语言基础-Java编程入门-005 | Java方法定义及使用
一.方法概述和格式说明 为什么要用方法: 提高代码的复用性 什么是方法: 完成特定功能的代码块 方法的格式: 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) { 方 ...
- 200-Java语言基础-Java编程入门-006 | Java数组定义及使用(引用数据类型)
一.数组概述和定义格式说明 为什么要有数组(容器): 为了存储同种数据类型的多个值 数组概念: 数组是存储同一种数据类型多个元素的集合.也可以看成是一个容器. 数组既可以存储基本数据类型,也可以存储引 ...
- java编程中的Java.Lang.Math类
1. Math.PI :表示的是圆周率常量: 2.Math.E :表示的是普通常量(e): 3.abs()方法: 表示取绝对值 eg1: int x = Math.abs(50L); ...
- 200-Java语言基础-Java编程入门-004 | Java分支与循环
一.流程控制语句 可以控制程序的执行流程 在程序开发的过程之中一共会存在有三种程序逻辑:顺序结构.条件分支(选择)结构.循环结构. 顺序结构的定义,即:所有的程序将按照定义的代码从上往下.顺序依次执行 ...
- Java编程兵书
<Java编程兵书> 基本信息 作者: 桂颖 任昱衡 丛书名: 程序员藏经阁 出版社:电子工业出版社 ISBN:9787121207419 上架时间:2013-8-26 出版日期:2013 ...
随机推荐
- 解决AngularJS和Django模板标签冲突问题
原地址 Django和AngularJS在模板中使用同样的符号来引用变量,例如 {{variable_name}}. 有两种解决办法,各有利弊.一个修改AngularJS模板语法,另一个使用Djang ...
- 端口映射工具 redir/socat/xinetd - 运维技术 - 开源中国社区
端口映射工具 redir/socat/xinetd - 运维技术 - 开源中国社区 端口映射工具 redir/socat/xinetd 10人收藏此文章, 我要收藏 发表于3天前(2013-08 ...
- C语言笔记之结构体
结构的本质是C语言的一种数据抽象,通俗的说,是基本数据类型的重组. 为什么要重组呢?由于基本数据类型不够用了.为什么不够用了呢?由于须要的信息类型太多了. 这是一个非常大的话题.信息本来是没有什么类型 ...
- Linux 核心阅读工具vim+ctags+cscope+taglist
今天.介绍vim+ctags+cscope+taglist的内核阅读配置. 当使用过之后,我相信大部分人都会舍弃之前的Eclipse(我就是活生生的一个样例).我们先来看看实现的界面是怎么样的: 我们 ...
- uva10480(最小割)
传送门:Sabotage 题意:给定多个城市的网络,每个城市之间的通信有花费,要求使得首都和最大城市之间的通信断掉的最小花费.要求输出任意一组砸掉的边. 分析:跑一遍最大流dinic后,根据最小割定理 ...
- mini2440驱动奇谭——ADC驱动与測试(动态挂载驱动)
博客:http://blog.csdn.net/muyang_ren 实现功能:开发板动态载入adc驱动模块并能通过測试程序 系统:Ubuntu 14.04 驱动交叉编译内核:linux-2. ...
- UVA1455 - Kingdom(并查集 + 线段树)
UVA1455 - Kingdom(并查集 + 线段树) 题目链接 题目大意:一个平面内,给你n个整数点,两种类型的操作:road x y 把city x 和city y连接起来,line fnum ...
- Java正則表達式演示样例
import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexMatches { public s ...
- SWT的TableVierer的使用二(数据排序)
有一个功能是我们常使用的,就是在列的头上点击一下,整个表的记录按照这个列来排序,再点击一下按照这个列的反序来排序.那JFace是如何实现这个功能的呢?在JFace中是通过一个排序器来实现的,就是Vie ...
- 伪教练技术培训之殇-2013年9月江西IDC拓行榜与综述
纠集几个人,然后培训所谓的教练技术培训. 培训的人一期又一期的参与,国学.佛学.超能量,无所不用其极,然后就是疯狂的拿人头,邀请朋友加盟. 有甚者还披上“科技”的外衣,用“水知道答案”这种早被公知指出 ...