JAVA 代码开发规范
一.开发工具规范:
1. 开发工具经项目负责人调试后统一确定。
2. 开发工具一经确定不允许集成任何非统一插件,若有需要,经项目负责人同意后统一为
项目组成员添加。
3. 开发工具的编码格式不允许修改。
二.排版规范:
1. 关键词(或变量)和操作符之间加一个空格。
例如:int iCont = 1;//操作符和值之间有一个空格。
2. 相对独立的代码块与块之间加空行。
例如:两个方法之间需要用空格隔开。
3. 较长的语句、表达式等要分成多行书写。
4. 长表达式要在低优先级操作符处划分新行,操作符放在新行之首。
5. 代码的新行与上一行根据逻辑关系要进行适应的缩进(一个 table 键),使排版整齐,语
句易读。
6. 不允许把多个短语句写在一行中,即一行只写一条语句。
7. 函数或过程的开始、结构的定义及循环、判断等语句中的代码都要采用缩进风格。采用
TABLE 键缩进。
8. 循环、判断等语句中若有较长的表达式或语句,则要进行适应的划分。
9. 若函数或过程中的参数较长,则要进行适当的划分。
10. 用大括号‘{’和‘}’界定一段程序块时,编写程序块时‘{’和 ‘}’应各独占一行
并且位于同一列,同时与引用它们的语句左对齐。在函数体的开始、类的定义、结构的定义、
枚举的定义以及 if、for、do、while、switch、case 语句中的程序都要采用如上的缩进方
式。
JAVA代码开发规范(WISHSOFT)
11. main 方法:如果 main(String[]) 方法已经定义了, 那么它应该写在类的底部.
三.命名规范:
1. Package(包)的命名
Package 的名字应该都是由一个小写单词组成。
例如:package com.wish;
2. Class 的命名
Class 的名字必须由大写字母开头而其他字母都小写的单词组成,对于所有标识符,其
中包含的所有单词都应紧靠在一起,而且大写中间单词的首字母。
例如:
public class DatabaseOperator
{
}
3. Class 中成员变量的命名
变量的名字必须用一个小写字母开头,后面的单词用大写字母开头,不需要数据类型前
缀。
例如:userName,size。
4. Class 中 Static Final 变量的命名
static Final 变量的名字应该都大写,并且指出完整含义。
例如:
public static final String DB_CONFIG_FILE_PATH ="com.neu.etrain.dbconfig";
5. Class 中方法的命名
方法的名字开头的单词必须用一个小写字母,后面的单词用大写字母开头。
例如:setName() , getMethod()。
6. 方法声明中参数命名
使用有意义的参数命名,如果可能的话,使用和要赋值的字段一样的名字。
例如:
public void setCounter(int size)
{
JAVA代码开发规范(WISHSOFT)
this.size = size;
}
7. 方法内变量的命名
Class 中成员变量的命名。
8. 数组的命名
数组应该总是用下面的方式来命名: byte[] buffer;而不是: byte buffer[];
9. 分页中每页列表数量的变量使用 pageSize,当前的所在的页号为 pageNumber。
四.注释规范:
1. 注释要简单明了。
2. 边写代码边注释,修改代码同时修改相应的注释,以保证注释与代码的一致性。
3. 在必要的地方注释,注释量要适中。注释的内容要清楚、明了,含义准确,防止注释二
义性。保持注释与其描述的代码相邻,即注释的就近原则。
4. 变量、常量的注释应放在其上方相邻位置或右方,不可放在下面。
5. 全局变量要有较详细的注释,包括对其功能、取值范围、哪些函数或过程存取它以及存
取时注意事项等的说明。
6. 类,方法的注释采用 eclipse 自动生成方法。
当把一个类,或方法的声明写完整后,在类,方法的正上方(不许有空格)在英文输入
法状态下输入:/** 后,系统会自动生成他们的注释模板,我们只需要填写相应的说明文字
即可,注意:/**的下一行一定要写功能说明。
7. 具体要求说明:
n 声明性(变量定义类)一定要有注释。例如:String myName; //用户名
n 类定义必须生成文档(JavaDoc)注释。
n 方法必须生成文档(JavaDoc)注释(包括实体类的set,get方法)。
n 成员变量必须生成文档(JavaDoc)注释。
n 方法中的逻辑部分由程序编写人根据复杂情况自行书写。
8. 类定义的注释信息,包括:作者;日期;模块功能描述(如功能、主要算法、内部各部
分之间的关系、该文件与其它文件关系等);本文件历史修改记录;版本信息等。
/**
* 干什么用的(描述信息)
JAVA代码开发规范(WISHSOFT)
* @author lifw20080320
* @modify lifw20080321
* @modify lifw20080322 (如果有多个,依次写多个@modify)
* @copyright wishsoft
**/
9.javadoc 注释标签语法
@author 对类的说明 标明开发该类模块的作者
@version 对类的说明 标明该类模块的版本
@see 对类、属性、方法的说明 参考转向,也就是相关主题
@param 对方法的说明 对方法中某参数的说明
@return 对方法的说明 对方法返回值的说明
@exception 对方法的说明 对方法可能抛出的异常进行说明
五.基本数据类型前缀表(其他对象类型,随时补充):
Java 中数据类型 |
数据类型前缀 |
int |
i |
String |
str |
char |
c |
long |
l |
float |
f |
double |
d |
boolean |
b |
short |
s |
byte |
byte |
vector |
v |
六.日志组件使用规范(log4j)
1. Log 中的方法使用:
a) log.debug()是放在代码行中间,用来调试时输出使用,永久保留,不用删除。
b) log.error()是放在 try{}catch(){}中 catch 部分里的用来输出 error 异常信息使用的。
JAVA 代码开发规范的更多相关文章
- IDEAL葵花宝典:java代码开发规范插件 p3c
前言: P3C插件 是阿里巴巴p3c项目组进行研发.这个项目组是阿里巴巴开发爱好者自发组织形成的虚拟项目组,根据<阿里巴巴Java开发规范>转化而成的自动化插件,并且实现了部分自动编程. ...
- IDEAL葵花宝典:java代码开发规范插件 lombok 插件
前言: lombok简介: lombok是暑假来到公司实习的时候发现的一个非常好用的小工具,刚见到的时候就感觉非常惊艳,有一种相见恨晚的感觉,用了一段时间之后感觉的确挺不错,所以特此来推荐一下. 那么 ...
- IDEAL葵花宝典:java代码开发规范插件 checkstyle、visualVM、PMD 插件
前言: visualVM: 运行java程序的时候启动visualvm,方便查看jvm的情况 比如堆内存大小的分配:某个对象占用了多大的内存,jvm调优必备工具. checkstyle: CheckS ...
- IDEAL葵花宝典:java代码开发规范插件:GsonFormat插件将JSONObject格式的String 解析成实体
前言: GsonFormat插件主要用于使用Gson库将JSONObject格式的String 解析成实体,该插件可以加快开发进度,使用非常方便,效率高. 这个教程主要是学习IntelliJ IDEA ...
- IDEAL葵花宝典:java代码开发规范插件 FindBugs-IDEA
前言: 检测代码中可能的bug及不规范的位置,检测的模式相比p3c更多,写完代码后检测下 避免低级bug,强烈建议用一下,一不小心就发现很多老代码的bug. 使用步骤: 1):打开 Settings ...
- IDEAL葵花宝典:java代码开发规范插件 Rainbow Brackets 插件
前言: 最近在Jetbrains IDEA插件网站逛发现了 Rainbow Brackets这款插件,非常棒,推荐给大家. 可以实现配对括号相同颜色,并且实现选中区域代码高亮的功能. 对增强写代码的有 ...
- IDEAL葵花宝典:java代码开发规范插件 GenerateAllSetter、ECtranslation、translation、插件
前言: GenerateAllSetter: 我们在程序开发过程中,往往要编写这样的类:类的部分或者全部属性不希望让外部世界直接访问,而不用public字段修饰.这样,方法调用成了访问这些属性的唯一 ...
- IDEAL葵花宝典:java代码开发规范插件 (maven helper)解决maven 包冲突的问题
小编说到: 在我们日常开发当中常常我们会遇到JAR包冲突.找来找去还找不到很是烦人.那么所谓的JAR包冲突是指的什么那?JAR包冲突就是-引入的同一个JAR包却有好几个版本. 例如: 项目中引用了两个 ...
- java代码开发完成后,代码走查规范
代码走查注意事项: 1.不变的值,尽量写个常量类 2.尽量使用if{}else,不要一直if去判断 3.减少循环调用方法查询数据库 4.dao层尽量不要用逻辑,尽量在service里写业务逻辑 5.金 ...
随机推荐
- 小公司免费的ERP软件
http://www.2bizbox.cn/ https://www.odoo.com/
- 如何打造100亿SDK累计覆盖量的大数据系统
作为推送行业领导者,截止目前个推SDK累计安装覆盖量达100亿(含海外),接入应用超过43万,独立终端覆盖超过10亿 (含海外).个推系统每天会产生大量的日志和数据,面临许多数据处理方面的挑战. 首先 ...
- C#动态表达式计算
C#动态表达式计算 应该有不少人开发过程中遇到过这样的需求,我们直接看图说话: 如上图所示,其中Entity为实体类,其中包括五个属性,该五个属性的值分别来自于数据库查询结果: 用户通过可视化界面进行 ...
- Bootstrap 导航
在本文中,您将学习如何使用 Bootstrap 工具包来创建基于导航.标签.胶囊式标签的导航. 基于标签的导航 nav nav-tabs <!DOCTYPE html> <html ...
- 大数据和Hadoop生态圈
大数据和Hadoop生态圈 一.前言: 非常感谢Hadoop专业解决方案群:313702010,兄弟们的大力支持,在此说一声辛苦了,经过两周的努力,已经有啦初步的成果,目前第1章 大数据和Hadoop ...
- linux的运行级别
一.linux共有七种运行级别,内容如下: 级别0:停机状态,系统默认运行级别如果设为0,将不能正常启动: 级别1:单用户模式,只允许root用户对系统进行维护: 级别2:多用户模式,但没有NFS(h ...
- visual studio快捷键总结
熟练操作vs的快捷键,可以有效地提高开发效率,下面将vs 2008与vs 2010的快捷键进行了总结,结果如下表: 注:vs 2010与vs 2008的快捷键基本相同. 编辑: CTRL + M, ...
- POJ 2337 输出欧拉路径
太无语了. 这道题做了一整天. 主要还是我太弱了. 以后这个就当输出欧拉路径的模版吧. 题目中的输出字典序最小我有点搞不清楚,看了别人是这么写的.但是我发现我过不了后面DISCUSS里面的数据. 题意 ...
- 基于SUSE Linux做NFS文件挂载
linux文件挂载其实和windows文件共享原理差不多,由主机配置一个共享目录,客户端机器可以通过网络访问该共享目录. 下面以SUSE11为例子,简要描述下NFS文件挂载过程: 一.主机端(主机IP ...
- linux下使用select实现精确定时器
在编写程序时,我们经常回用到定时器.本文讲述如何使用select实现超级时钟.使用select函数,我们能实现微妙级别精度的定时器.同时,select函数也是我们在编写非阻塞程序时经常用到的一个函数. ...