java代码规范,
java代码规范,
一.开发工具规范:
1. 开发工具经项目负责人调试后统一确定。
2. 开发工具一经确定不允许集成任何非统一插件,若有需要,经项目负责人同意后统一为 项目组成员添加。
3. 开发工具的编码格式不允许修改。
-——----------------------------------------------------------小生在此————————————————————————————
二.排版规范:
1. 关键词(或变量)和操作符之间加一个空格。 例如:int iCont = 1;//操作符和值之间有一个空格。
2. 相对独立的代码块与块之间加空行。 例如:两个方法之间需要用空格隔开。
3. 较长的语句、表达式等要分成多行书写。
4. 长表达式要在低优先级操作符处划分新行,操作符放在新行之首。
例如:int variable = (a * b * c * d) + (e * f)
+ (h – i - j) + k
- ((l + m) / n);
5. 代码的新行与上一行根据逻辑关系要进行适应的缩进(一个 table 键),使排版整齐,语 句易读。
6. 不允许把多个短语句写在一行中,即一行只写一条语句。
7. 函数或过程的开始、结构的定义及循环、判断等语句中的代码都要采用缩进风格。采用 TABLE 键缩进。
8. 循环、判断等语句中若有较长的表达式或语句,则要进行适应的划分。
9. 若函数或过程中的参数较长,则要进行适当的划分。
10. 用大括号‘{'和‘}'界定一段程序块时,编写程序块时‘{'和 ‘}'应各独占一行 并且位于同一列,同时与引用它们的语句左对齐。在函数体的开始、类的定义、结构的定义、 枚举的定义以及 if、for、do、while、switch、case 语句中的程序都要采用如上的缩进方 式。
11. main 方法:如果 main(String[]) 方法已经定义了, 那么它应该写在类的底部.
-——----------------------------------------------------------小生在此————————————————————————————
三、命名规范
1、 项目名全部小写
2、 包名全部小写
项目包命名规则:<域名反转>.<团队名>.<项目名>。相关项目可使用<域名反转>.<团队名>.<父项目名>.<子项目名>的命名法则。
命名必须全部使用英文小写字母,禁止使用“下划线”等字符。(除常量外,Java命名习惯中均不推荐使用下划线等字符)
如:com.aozhi.testjdbc.test
3、Class/Object、Interface, 类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写。
抽象类使用“Abstract”做为类命名的开头;
Exception类命名使用“Exception”做为类命名的结尾;
Test类使用“Test”做为类命名的结尾;
在面向接口编程中,接口的实现类的命名规则为:<接口名>+"Impl"。禁止使用匈牙利命名法。
如:public class MyFirstClass{}
接口&&接口实现类
接口 | 接口实现 |
UserDao | UserDaoImpl |
4、Method/Function
方法的命名使用驼峰法,一般使用动词或动词+名词组合。
设置/获取某个值的方法,命名为setV/getV
返回长度的方法,命名为length
判断布尔值的方法,命名为isV
将对象转换为某个特定类型的方法应该命名为toT
示例:
getSecretStage() |
length() |
isEmpty() |
toSpecialFormat() |
5、 变量名、方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写 ,使用驼峰法。
如:int index=0;
public void toString(){}
6、 常量名全部大写
如:public static final String GAME_COLOR=”RED”;
7、所有命名规则必须遵循以下规则:
1)、名称只能由字母、数字、下划线、$符号组成
2)、不能以数字开头
3)、名称不能使用JAVA中的关键字。
4)、坚决不允许出现中文及拼音命名。
-----------------------------------------------------------------------------------小生来此为了分割----------------------------------------------
匈牙利命名:
开头字母用变量类型的缩写,其余部分用变量的英文或英文的缩写,要求单词第一个字母大写。
骆驼式命名法:就是当变量名或函数名是由一个或多个单词连结在一起,而构成的唯一识别字时,第一个单词以小写字母开始;从第二个单词开始以后的每个单词的首字母都采用大写字母,例如:myFirstName、myLastName,这样的变量名看上去就像骆驼峰一样此起彼伏,故得名。
帕斯卡命名法:又叫大驼峰式命名法。 每个单词的第一个字母都大写。
-——----------------------------------------------------------小生在此————————————————————————————
四 注释规范
代码注释是架起程序设计者与程序阅读者之间的通信桥梁,最大限度的提高团队开发合作效率。也是程序代码可维护性的重要环节之一。所以我们不是为写注释而写注释
1、 注释形式统一
在整个应用程序中,使用具有一致的标点和结构的样式来构造注释。如果在其它项目中发现它们的注释规范与这份文档不同,按照这份规范写代码,不要试图在既成的规范系统中引入新的规范。
2、 注释内容准确简洁
内容要简单、明了、含义准确,防止注释的多义性,错误的注释不但无益反而有害。
3、基本注释
(a) 类(接口)的注释
(b) 构造函数的注释
(c) 方法的注释
(d) 全局变量的注释
(e) 字段/属性的注释
备注:简单的代码做简单注释,注释内容不大于10个字即可,另外,持久化对象或VO对象的getter、setter方法不需加注释。具体的注释格式请参考下面举例。
4、特殊必加注释
(a) 典型算法必须有注释。
(b) 在代码不明晰处必须有注释。
(c) 在代码修改处加上修改标识的注释。
(d) 在循环和逻辑分支组成的代码中加注释。
(e) 为他人提供的接口必须加详细注释。
备注:此类注释格式暂无举例。具体的注释格式自行定义,要求注释内容准确简洁。
注释格式:
1、单行(single-line)注释:“//……”
2、块(block)注释:“/*……*/”
3、文档注释:“/**……*/”
4、javadoc 注释标签语法
@author 对类的说明 标明开发该类模块的作者
@version 对类的说明 标明该类模块的版本
@see 对类、属性、方法的说明 参考转向,也就是相关主题
@param 对方法的说明 对方法中某参数的说明
@return 对方法的说明 对方法返回值的说明
@exception 对方法的说明 对方法可能抛出的异常进行说明
——————————————————————小生——
示例:
1、 类注释
在每个类前面必须加上类注释,注释模板如下:
/**
*
* FileName: Test.java(类名)
* (类的详细说明)
*
* @author 类创建者姓名
* @Date 创建日期
* @version 1.00
*/
2、 属性注释
在每个属性前面必须加上属性注释,注释模板如下:
/** 提示信息 */
private String strMsg = null;
3、 方法注释
在每个方法前面必须加上方法注释,注释模板如下:
/**
* 类方法的详细使用说明
*
* @param 参数1 参数1的使用说明
* @return 返回结果的说明
* @throws 异常类型.错误代码 注明从此类方法中抛出异常的说明
*/
4、 构造方法注释
在每个构造方法前面必须加上注释,注释模板如下:
/**
* 构造方法的详细使用说明
*
* @param 参数1 参数1的使用说明
* @throws 异常类型.错误代码 注明从此类方法中抛出异常的说明
*/
5、 方法内部注释
在方法内部使用单行或者多行注释,该注释根据实际情况添加。
————————————————————————————————————————————————————————————————————————————小生分割————————————————————————————————
常见的Java不规范代码:
在Eclipse中格式化源代码并管理import语句
Eclipse提供了自动格式化源代码和管理import语句的功能(并移除未使用的语句)。你可以使用下面的快捷键来使用这些功能。
Ctrl + Shift + F – 格式化源代码。
Ctrl + Shift + O – 管理import语句并移除未使用的语句。
除了手动执行这两个功能外,你还可以让Eclipse在保存文件的时候自动格式化源代码并自动管理import语句。要做到这个,在Eclipse中,到 Window -> Preferences -> Java -> Editor -> Save Actions并启用 Perform the selected actions on save,选中 Format source code和 organize imports。
避免在方法中出现多个return语句(退出点):
在你的方法中,确保只有一个 退出点。不要在一个方法中使用多于一个return语句。
如,下面的代码是 不推荐的,因为它有多个退出点(return语句)。
//不推荐使用
private boolean isEligible(int age){
if(age>18){
return true;
}else{
return false;
}
}
//推荐
private boolean isEligible(int age){
boolean result;
if(age>18){
result=true;
}else{
result=false;
}
return result;
}
简化if-else方法:
我们写了一些只要一个参数的工具方法,检查一些条件并根据条件返回一个值
//不推荐
private boolean isEligible(int age){
boolean result;
if(age>18){
result=true;
}else{
result=false;
}
return result;
}
//推荐
private boolean isEligible(int age){
return age>18;
}
不要为Boolean,Integer或String创建新的实例:
避免创建新的Boolean,Integer,String等实例。使用Boolean.valueOf(true)代替new Boolean(true)。两种写法效果差不多但却可以改善性能。
在代码块周围使用大括号:
永远不要忘记在块类型语句(如:if,for,while)周围使用大括号。这可以减少代码歧义并且避免在你修改代码块的时候产生新的bug。
//不推荐
if(age>18)
return true;
else
return false;
//推荐
if(age>18){
return true;
}else{
return false;
}
别忘了给switch添加default语句:
总是给switch添加一个default语句。
避免 重复 使用同样的字符串,创建一个常量吧:
如果你需要在多个地方使用同一个字符串,那就创建一个字符串常量来使用吧。
把多个if语句合并成一个
相关文章
- 暂无相关文章
用户点评