Java代码编程规范1.doc
《Java代码编程规范1.doc》由会员分享,可在线阅读,更多相关《Java代码编程规范1.doc(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 技 术 文 件 文件名称: JAVA代码编程规范 文件编号: 版 本: V2.0 文件等级:共 37 页(包括封面) 项目名称: 项目代码: 拟 制: 郭军,曹阳 单 位: 网络资源开发部 日 期: 2002年8月22日 深圳市中兴通讯股份有限公司目 录1概述41.1编程规范的必要性41.2规范文档的一些要求41.3如何使代码简洁42源文件的组织52.1Java源文件52.1.1文档开头的注释52.1.2Package和Import声明52.1.3类和接口声明53文档的缩进规则53.1行的长度53.2代码行的分割54代码的注释规则84.1代码注释的基本原则84.2注释的运用84.3Imple
2、mentation注释的格式94.3.1块注释94.3.2单行注释94.3.3后注释(trailing)104.3.4行尾注释(End-of-line)104.4文档型注释(Documentation)104.4.1位置114.4.2javadoc标签的使用124.4.3加入样例代码124.4.4生成javadoc文档135变量的声明145.1每行变量声明个数145.2变量初始化145.3变量声明的位置145.4类和接口的声明156语句166.1简单语句166.2复合语句166.3返回语句166.4if,if-else,if else-if else语句166.5for语句176.6while
3、 循环语句176.7do-while 语句176.8switch语句176.9try-catch 语句187空行和空格的使用187.1空行的使用187.2空格的使用198命名规范198.1命名的基本原则208.2成员函数的命名规则208.2.1成员访问函数的命名208.3属性域(fields/property)的命名218.3.1组件的命名218.4常量的命名228.5数组的命名228.6局部变量的命名标准228.6.1流(Streams)的命名228.6.2循环变量的命名228.6.3异常(Exception)处理中的命名238.6.4通用对象命名约定238.7类、接口、包的命名239编程规
4、范239.1访问类变量和实例239.2类变量和方法239.3常量259.4变量的声明259.5几个注意点259.5.1括号259.5.2返回值269.5.3条件运算中的表达式2610编码实例2610.1JAVA源文件的例子2611总结和索引2911.1JAVA命名规范2911.2JAVA文档注释规范2911.2.1基本原则2911.2.2注释的内容3111.3JAVA编码规范3212警惕内存泄漏3313J2EE命名规范3413.1EJB包结构3413.2Servlet包结构3613.3通用工具包结构3613.4JNDI名称3714参考书目3715细节371 概述1.1 编程规范的必要性代码编程
5、规范之所以重要是因为:l 软件生命周期中的80%时间是软件维护期;l 几乎没有任何软件在其整个生命周期中一直由它的原作者来负责维护;l 代码编程规范能够增加软件的可读性,使得软件工程师更快更准确地理解新代码l 编程规范能提高软件的封装性;1.2 规范文档的一些要求 后面文中将深入讨论结构良好的程序文档的规则和要求。一个结构良好的文档应首先做到以下几点。l 文档注释应能增加代码的可读性编写注释的目的是使你、你的开发伙伴以及后续的开发人员更好地理解你的代码。SUN公司JAVA开发组的Nagle曾说过“如果程序不值得写文档的话,意味着代码也不值得运行”。l 避免文档的过度修饰六七十年代的COBOL语
6、言开发着有一种注释习惯,通常用星号画一个方盒子来填写注释。这样做的确很好看,但对于最终产品来讲没有太多的益处。应当注意文档中注释和代码的比例,代码的注释应当简洁、明了。l 在编码前就开始写文档 原则上讲,我们看一段代码总能发现它在做什么。例如,下面这段代码中,我们能分析出代码的行为,但不能真正看出它的确切语义。 If ( grandTotal = 1000.00) grandTotal = grandTotal*0.95; 在注释文档中应说明代码所表达的语义和编码设计思想,而不应只是就事论事的讲述代码的行为。1.3 如何使代码简洁l 为代码写注释文档l 将代码从逻辑上分段l 合理的使用空行l
7、遵守“30秒规则”,提高代码的可读性l 书写较短的代码行2 源文件的组织一个JAVA源文件是由用空白行和注释分隔开的很多部分组成的,通常文件长度应该小于2000行。2.1 Java源文件每一个Java源文件都包括一个公共的类或接口。当私有类或接口与公共类相关联的时候,通常可以将其与公共类放在同一个源文件当中。公共类应是文件中的第一个类或接口。Java源文件的组织结构如下:l 文件开始的注释段l Package和Import的声明l 类和接口声明2.1.1 文档开头的注释所有源文件的开始部分都要有一个C语言风格的注释段,列出本程序的类名、版本信息、日期、版权声明。如下所示。/* * Classn
8、ame * * Version information * * Date * * Copyright notice */2.1.2 Package和Import声明通常Java源文件中第一个非注释行是一个Package声明,然后是Import声明。如下所示。package java.awt;import java.awt.peer.CanvasPeer;2.1.3 类和接口声明下表描述了类和接口声明中的一些部分,按照其出现顺序列出:类和接口说明说明1Class/Interface 文档型注释/* * */2Class或Interface声明3Class或Interface的实现声明该段注释中应
9、该包括任何与类和接口有关的,但又不适于放在文档注释区中的注释说明4类静态变量变量出现的顺序为,首先公共变量,然后protected变量,然后是包package一级的变量,然后是私有变量5变量实例首先是公共变量,然后protected变量,然后是包package一级的变量,然后是私有变量6构造函数(Constructors)7方法方法应该按照功能而不是范围和可访问性来分类。例如,一个私有的类方法可以在两个公共的Instance方法的中间。这样做的目的是提高代码的可读性。3 文档的缩进规则文档中的缩进基本单位是4个空格。Tab键应当设置为4个空格键(WSAD中的缺省设置)。3.1 行的长度代码行的
10、长度应小于80个字符,否则不能被编辑和处理工具很好的处理。通常文档中代码例子的长度不超过70个字符。(在Jbuilder中可以设置,保持一致,80个字符)3.2 代码行的分割当一个表达式因太长等原因不适于单行放置的时候,可以根据下面的规则来进行分割:l 在逗号后面分割;l 在操作符前分割;l 应选择高一级的分割而不是低一级的分割;l 将换行后的表达式的开始部分与前一行的同一级表达式对齐;l 如果上述规则使得代码难读或代码集中在行的右侧,应4空格的缩进规则;(WSAD中的缺省设置,空一个TAB间隔)下面是一些方法调用行分割的例子someMethod(longExpression1, longEx
11、pression2, longExpression3,longExpression4, longExpression5);Type var = someMethod1(longExpression1,someMethod2(longExpression2,longExpression3)以上是好的格式,以下就不是很好。Type var = someMethod1(longExpression1,someMethod2(longExpression2,longExpression3)下面是两个算术表达式的换行分割的例子。LongName1 = longName2*( longName3 + lo
12、ngName4 longName5) + 4 * longName6; / 较好的分割方式LongName1 = longName2*( longName3 + longName4 longName5)+ 4 * longName6; / 尽量避免这种分割方式其中,第一方式的较好,因为换行分割点位于括号的外边,同第二种分割相比是分割的级别较高。当方法中参数很多时,提倡如下的书写:public void someMethod(Type longExpression1, Type longExpression2, Type longExpression3,Type longExpression4,
13、 Type longExpression5) . 同样,当IF语句或其他循环语句较长时,提倡如下的书写: if (condition1 & condition2 ) | (condition3 & condition4) | !(condition5 & condition6) doSomethingAboutIt();下面是3个可接受的表达式的书写方式alpha = (alongBooleanExpression) ? beta : gamma;alpha = (alongBooleanExpression) ? beta : gamma;alpha = (alongBooleanExpre
14、ssion) ? beta : gamma;4 代码的注释规则JAVA有三种注释方式。如下表所示。注释方式使用场合例 子文档型(Document)注 释这种注释放在程序代码中的,接口函数、类、成员函数和域的声明定义之前。文档型注释由javadoc来处理。如右图所示,为一个类创建一个外部说明文档。/* Customer- A customer is any person or organization that we sell services and products to. author S.W. Ambler*/C 风格的注释一般来说,用C风格的注释来说明一段代码是不合适的。 这种方式主要
15、用在维护和修改代码时,或者调试中临时关闭一段代码时使用。/* This code was commented out By J.T.Kirk on Dec 9,1997 because it was replaced by the prededing code. Delete it after two years if it is still not applicable. (the source code)*/单行注释一般在成员函数的内部采用单行注释,主要用来说明事务逻辑(business logic)、代码段、临时变量的声明定义。/Apply a 5% discount to all in
16、voices /over $1000 as defined by the Sarek/ generosity compaign started in / Feb. Of 19954.1 代码注释的基本原则l 注释应能使代码更加明确l 避免注释部分的过度修饰l 保持注释部分简单、明确l 在编码以前就应开始写注释l 注释应说明设计思路而不是描述代码的行为4.2 注释的运用JAVA程序有两类注释:一类是实现性注释(implementation comments),另一类是文档型注释(documentation comments)。其中,Implementation 注释有C和C+两种格式,/*.*/
17、 和/。文档型注释是JAVA程序所独有的,在/*.*/中限定。文档型注释能够被javadoc文件工具提取到HTML文件中。Implementation注释用于注释代码或者注释特殊的实现。文档型注释主要是描述代码段的说明,从一种非面向实现的角度来写给开发人员阅读读,这些开发人员可能手边并没有源代码。通常注释应该是给代码一个总的描述或者提供从代码本身不太容易看出的附加性信息。注释的内容应只与读代码和理解代码有关。例如,关于相应的包(package)是如何构建,以及存放在什么目录中,不应该包括在注释中。对代码中不太明显的设计意图进行说明是应该的,但也应避免对一些明显的信息进行重复说明,尽量避免那些随
18、着代码的维护会过时的注释。注意:过于频繁的注释常常意味着代码质量较低。但你觉得必须频繁添加注释时,应考虑重写该段代码了。注释内容不应封在星号(*)或者其它字母围成的矩形框中;注释中不应带有特殊注释字符如制表符(form-feed)和退格符(backspace)。4.3 Implementation注释的格式JAVA程序段中可以有4种形式的实现注释:块注释(block)、单行注释、后注释(trailing)、行尾注释(end-of-line)。4.3.1 块注释块注释用来提供文件、方法、数据结构和算法的描述。块注释主要用在每个文件和方法的开头部分,有时也可用在方法的中间。在一个函数和方法中的块注
19、释应该遵照缩进规则排列到说明对象的同一级深度。通常块注释前用一个空行和其它的代码段分开。/* * Here is a block comment. */另外,用/* - 开始的块注释能够被indent(1)识别出,作为块注释的开始。例如,/*- * Here is a block comment with some very special * formatting that I want indent(1) to ignore. * */注意: 如果你自己不用indent(1),你没有必要用/* -注释开始。4.3.2 单行注释单行注释应与其注释的代码处在同一缩进级别中。如果一个注释能写成单
20、行,那么没有必要写成块注释。单行注释前面应有一个空格。例如,if (condition) /* Handle the condition. */.4.3.3 后注释(trailing)(不提倡使用)一些非常短的注释可以加在代码的同一行内,但是应该把注释和代码分开足够大的间隔,以增加可读性。如果在一个小代码段中有多个后注释,那么应将其用TAB缩进对齐。If (a = 2) Return TRUE;/* special case */ else return isPrime(a);/*work only for odd a */4.3.4 行尾注释(End-of-line)“/”注释符能够将整行或
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 代码 编程 规范
限制150内