《Java编码书写规范.docx》由会员分享,可在线阅读,更多相关《Java编码书写规范.docx(13页珍藏版)》请在优知文库上搜索。
1、文档编号:济南广域软件有限公司第4页共24页JinanWide-AreaSoftwareCo.,1.td对象实例同组件/部件2.注释约定2.1.一般概念注释应当增加代码的清晰度保持注释的简洁在写代码之前写注释注释出为什么做了一些事,而不仅仅是做了什么2.2.示范文档注释在紧靠接口、类、成员函数和字段声明的前面注释它们。C语言风格注释采纳C语言风格的注释去掉不再运用但你仍想保留的代码。仍想保留是因为用户万一会变更想法,或者在调试过程中想让它短暂失效。单行注释在成员函数内采纳单行注释,来说明业务逻辑、代码段和短暂变量的声明。注粹符后必需紧跟一个空格,然后才是注释信息。bytearrBuffer;S
2、tringBuffersbConte11t;/*客户:客户是我们将服务和产品卖给的人或机构。*/Stringcustomer;/*这部分代码因为已被它之前的代码取代,由B.Gustafsson,*于1999年6月4日注释掉。假如两年之后还未运用,将*其删除。.*(源代码)*/Java编码书写规范文档编号:处理条件*/.Java编码书写规范文档编号:济南广域软件有限公司第6页共24页JinanWide-AreaSoftwareCo.,1.td3.1.1.版权信息版权信息必需在Java文件的开头,比如:作者名称要用中文。其他不须要出现在javadoc的信息也可以包含在这里。3.1.2.Packag
3、e/Importspackage行要在import行之前,import中标准的包名要在本地的包名之前,而且根据字母依次排列。假如import行中包含了同一个包中的不同子书目,则应当用*来处理。这里java.io.*是用来代替InputStreamandOutputStreain的。3.1.3.Class类的注释/*Copyright2009WatSoftCo.1.td.*Allrightreserved.*Author*Date2009-02-27*/.stats:importjava.io.*;importjava.util.Observable;importhotlava.util.App
4、lication;Java编码书写规范文档编号:济南广域软件有限公司第7页共24页JinanWidC-AreaSOfIWareCo.,1.td类定义:包含了在不同行的extends和implements3.1.4.ClassFields类的成员变量:public的成员变量必需生成文档(JavaDoc)oProCCted、private和package定义的成员变量假如名字含义明确的话,可以没有注糅。类变量的存取:如类的成员变量已经有注释,类变量的存取方法可以没有注释。/*pTitle:文件名称/p*p)cscription:类内容的简介/p*pb更新记录:/b*格式:更新日期修改的版本操作人内
5、容br*2005-06-281.0张三完善create方法。br*/p*pCopyright:Copyright(c)2009/p*pCompany:WatSoftCo.1.td./p*version:1.1*/publicclassCounterSetextendsObservableimplementsCloneablet*Packetcounters*/protectedintpackets:Java编码书写规范文档编号:济南广域软件有限公司第8页共24页JinanWide-AreaSoftwareCo.,1.td3.1.5.构造函数构造函数:应当用递增的方式写(比如:参数多的写在后面)
6、。3.1.6.克隆方法假如这个类是可以被克隆的,那么下一步就第11页共24页JinanWide-AreaSoftwareCo.,1.td3.2.2.tag关键tag的书写依次为留意事项运用国标扩展字符集(GBK)作为content的CharSeIContentType在被包含的文件肯定不能写,而其他文件肯定要写建议用以下两种格式:tag一律用小写,属性的值用双引号引起来。出错信息定向到公用的出错页面JSP页面与java编码要完全分别(待补充)。3.2.3.值输出输出值时运用(=valu湍。3.2.4.嵌入代码段运用单独行%开头,单独行与结尾,注释参见2,代码块缩进参见4.2opageimpor
7、t=%includefile=%pageContentType=texthtml;Charset=GBK%pageimport=java.util.*,java.sql.*%多个import之间用逗号隔开,结尾不要分号一%,pageimport=java.util.*%pageimport=java.sql.*%全部的import均分开写一%Java编码书写规范文档编号:济南广域软件有限公司第12页共24页JinanWide-AreaSoftwareCo.,1.td4.其它代码书写风格约定4.1.文档自动生成必需用javadoc来为类生成文档。不仅因为它是标准,这也是被各种java编译器都认可
8、的方法。运用Author标记是不被举荐的,因为代码不应当是被个人拥有的。4.2.缩进缩进是必需的,并且在同一系统全部编码的缩进风格必需是统一的。4.3.页宽页宽应当设置为80字符,源代码不能超过此宽度。在任何状况下,超长的语句应当在一个逗号或者一个操作符后折行。一条语句折行后,应当比原来的语句再缩进3个字符。当一个表达式无法容纳在一行内时,可以依据如下一般规则断开之:在一个逗号后面断开在一个操作符前面断开宁可选择较高级别(higher-level)的断开,而非较低级别(lower-level)的断开新的一行应当与上一行同一级别表达式的开头处对齐假如以上规则导致你的代码混乱或者使你的代码都堆挤在
9、右边,那就代之以缩进8个空格。以下是两个断开算术表达式的例子。前者更好,因为断开处位于括号表达式的外边,%for(inti=0;i10;i+)out.println(i);%Java编码书写规范文档编号:第13页共24页JinanWide-AreaSoftwareCo.,1.td这是个较高级别的断开。IongNamel=longName2*(longName3+IongNamezI-longName5)+4*longname6:参考IongNamel=longName2*(IongNamC3+1ongName4-longName5)+4*IOngname6;/避开以下是两个缩进方法声明的例子。
10、前者是常规情形。后者若运用常规的缩进方式将会使其次行和第三行移得很竟右,所以代之以缩进8个空格常规缩进SomcMethod(intanArg,Objectanotherrg,Stringyetnotherrg,ObjectandSti1!Another)./制表符缩进privatestaticsynchronizedhorking1.ongMethodName(intanrg,ObjectanotherArg,StringyetAnotherArg,ObjectandStil!Another)(.if语句的换行通常运用8个空格的规则,因为常规缩进(4个空格)会使语句体看起来比较费劲。比如:不要
11、用这种方式if(conditionlcondition2)(condition3condition4)II!(condition5condition6)doSomethingboutIt();用这种方式if(condition1condition2)Java编码书写规范文档编号:济南广域软件有限公司第14页共24页JinanWide-AreaSoftwareCo.,1.td(conditio113condition4)II!(condition5condition6)doSomethingAboutltO:/或者这种方式if(CondiIionIcondition2)j!(condition3
12、condition4)I!(conditionscondition6)doSomethingboutItO:这里有三种可行的方法用于处理三元运算表达式:alpha=(a1.ongBoo1eanExpression)?beta:gamma;alpha=(a1.ongBoo1eanExpression)?beta:gamma;alpha=(a1.ongBoo1eanExpression)?beta:gamma;4.4.变量声明必需一行一个声明,因为这样以利于写注释。亦即,intlevel:/标识层级别intsize;/表大小要优于,inilevel,size;4.5.变量初始化尽量在声明局部变量的
13、同时初始化。唯一不这么做的理由是变量的初始值依靠于某些从前发生的计算。Java编码书写规范文档编号:济南广域软件有限公司第15页共24页JinanWide-AreaSoftwareCo.,1.td4.6.局部变量声明只在代码块的起先处声明变量。(一个块是指任何被包含在大括号和中间的代码。)不要在首次用到该变量时才声明之。4.7.空行空行将逻辑相关的代码段分隔开,以提高可读性。下列状况应当总是运用两个空行:一个源文件的两个片段(SeCtion)之间类声明和接口声明之间下列状况应当总是运用一个空行:两个方法之间方法内的局部变量和方法的第一条语句之间一个方法内的两个逻辑段之间,用以提高可读性4.8.
14、大括号中的语句应当单独作为一行。例如:4.9.小括号()左括号和后一个字符之间不应当出现空格:同样,右括号和前一个字符之间也不应当出现空格。例如:不要在语句中运用无意义的括号,括号只应当为达到某种目的而出现在源代码中。if(i)i+:CalIProc(AParameter);/不符合规范CallProc(AParameter):/符合规范Java编码书写规范文档编号:济南广域软件有限公司第16页共24页JinanWide-AreaSoftwareCo.,1.td4.10.运算符每个运算符与两边的字符之间都应当有一个空格。4.11.参数间隔多个参数之间的,应紧跟前面的参数,与后面的参数之间有一个
15、空格。4.12.JSP文件命名采纳完整的英文描述说明JSP所完成的功能,尽可能包括一个动词,第一个字母小写,如:ViewMessage.jspxeditUser.jsp或者forumChoser.jsp等。4 .13.Servlet类命名(待定)一般对应于所服务的对象加后缀Service来命名,如:UserService,TradeService等。5 .编码指南5.1.对实例以及类变量的访问限制若没有足够理由,不要把实例或类变量声明为公有。全部类成员变量要通过方法访问。通常,实例变量无需显式的设置(Set)和获得(gotten),通常这作为方法调用的边缘效应(sideintnum=100;/符合规范num+=1;/符合规范num=num-1:/不符合规范,应当是num=num-1;publicintmax(inta,intb,intc)/符合规范returnMath,max(Math,max(a,b),c):/不符合规范,a后面应当由空