Java代码规范那些事

openkk 13年前
     <p>Java开发中所要遵守的编码规范大体上有如下7点。命名规范、注释规范、缩进排版规范、文件名规范、声明规范、语句规范以及编程规范。</p>    <p><strong>1.命名规范</strong></p>    <p>(1)所有的标示符都只能用ASCⅡ字母(A-Z或a-z)、数字(0-9)和下划线“_”。</p>    <p>(2)一个唯一包名的前缀总是全部小写的字母。例如:www.tonysun.cc</p>    <p>(3)类名是一个名词,采用大小写混合的方式,每个单词的首字母大写。例如:Tony。</p>    <p>(4)接口的大小写规则与类名相似:例如:Tony。</p>    <p>(5)方法名是一个动词或动词词组,采用大小写混合的方式,第一个单词的首字母小写,其后单词的首字母大写。例如:setNeekeName(String neekeName)。</p>    <p>(6)变量名第一个字母小写,任何中间单词的首字母大写。变量名应简短且可以顾名思义,易于记忆。例如:neekeName、neekeAddress。避免单个字符的变量名,除非是一次性的临时变量。</p>    <p>(7)常量的声明应该全部大写,每个单词之间用“_”连接。例如:final String WWW_TONY_CN = "www.tonysun.cc";</p>    <p><strong>2.注释规范</strong></p>    <p>(1)注释尽可能使用“//”;对于所有的javadoc的注释则使用“/** */”;而临时对代码块进行注释尽量使用“/* */”。</p>    <p>(2)所有的源文件都应该在开头有一个注释,其中列出文件名、日期和类的功能概述。</p>    <p>(3)每个方法必须添加文档注释(类的main()方法除外)。</p>    <p>(4)每个属性必须添加注释。</p>    <p>(5)代码中至少包含15%的注释。</p>    <p>(6)注释使用中文。</p>    <p><strong>3.缩进排版规范</strong></p>    <p>(1)避免一行的长度超过60个字符。</p>    <p>(2)使用Eclipse的源代码的格式化功能完成代码的缩进排版(Ctrl+Shift+F)。</p>    <p><strong>4.文件名规范</strong></p>    <p>(1)一个Java源文件只能存储一个Java类。</p>    <p>(2)文件名与Java类名相同。</p>    <p>(3)一个类文件的代码行不超过200行。</p>    <p><strong>5.声明规范</strong></p>    <p>(1)一行声明一个变量。</p>    <p>(2)不要将不同类型变量的声明放在同一行。</p>    <p>(3)只在代码块的开始处声明变量。</p>    <p>(4)所有的变量必须在声明时初始化。</p>    <p>(5)避免声明的局部变量覆盖上一级声明的变量。</p>    <p>(6)方法与方法之间以空行分隔。</p>    <p><strong>6.语句规范</strong></p>    <p>(1)每行至少包含一条简单语句。</p>    <p>(2)在return语句中,返回值不使用小括号“()”括起来。</p>    <p>(3)if语句总是用“{”和“}”括起来。</p>    <p>(4)在for语句的初始化或更新子句中,避免因使用三个以上变量,而导致复杂度提高。</p>    <p>(5)当switch的一个case顺着往下执行时(因为没有break语句),通常应在break语句的位置添加注释。</p>    <p><strong>7.编程规范</strong></p>    <p>(1)提供对实例以及类变量的public或private访问控制,尽可能不适用默认值或protected访问控制。</p>    <p>(2)避免用一个对象访问一个类的静态变量或方法。应该用类名代替。</p>    <p>(3)避免在一个语句中给多个变量赋相同的值。</p>    <p>(4)用switch()语句实现多路分支。</p>    <p>(5)如果使用JDBC,则考虑使用java.sql.PreparedStatement,而不是java.sql.Statement。</p>    <p>(6)用于设置对象状态的方法前缀必须是set;用于检索一个布尔类型对象状态的方法前缀必须是is,而用于检索其他方法前缀必须是get。</p>    <p>(7)程序中应尽可能少使用数字(或字符),尽可能定义静态变量来说明该数字(或字符)的含义。程序中需要赋值或比较时,使用前面定义的静态变量。在循环控制中例外。</p>    <p>原文链接:http://tonysun3544.iteye.com/blog/1287903</p>