java编码规范开发规范

java编码规范开发规范

ID:3655829

大小:110.21 KB

页数:10页

时间:2017-11-22

java编码规范开发规范_第1页
java编码规范开发规范_第2页
java编码规范开发规范_第3页
java编码规范开发规范_第4页
java编码规范开发规范_第5页
资源描述:

《java编码规范开发规范》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1Java编码规范1.1缩进§使用Tab缩进,而不是空格键--将缩进2,4,8字符的选择权留给阅读者。1.2换行§每行120字符--因为已是1024*768的年代。§if,for,while语句只有单句时,如果该句可能引起阅读混淆,需要用"{"和"}"括起来,否则可以省略。//错误,需要使用花括号{}括起来if(condition)if(condition)doSomething();elsedoSomething();1.3命名规则遇到缩写如XML时,仅首字母大写,即loadXmlDocument()而不是loadXMLDocument()Package名必须全部小写,尽量使用单

2、个单词Interface名可以是一个名词或形容词(加上'able','ible',or'er'后缀),如Runnable,Accessible。为了基于接口编程,不采用首字母为I或加上IF后缀的命名方式,如IBookDao,BookDaoIF。页面部件名建议命名为:btnOK、lblName或okBtn、nameLbl。其中btn、lbl缩写代表按钮(Button)、标签(Label)。(II)局部变量及输入参数不要与类成员变量同名(get/set方法与构造函数除外)修饰符应该按照如下顺序排列:public,protected,private,abstract,static,fin

3、al,transient,volatile,synchronized,native,strictfp。类与接口的声明顺序(可用Eclipse的source->sortmembers功能自动排列):1.静态成员变量/StaticFields102.静态初始化块/StaticInitializers3.成员变量/Fields4.初始化块/Initializers5.构造器/Constructors6.静态成员方法/StaticMethods7.成员方法/Methods8.重载自Object的方法如toString(),hashCode()和main方法9.类型(内部类)/Types(I

4、nnerClasses)同等的类型,按public,protected,private的顺序排列。1.1注释规范(DocumentConvertions)1.1.1失效代码注释§由/*...*/界定,标准的C-Style的注释。专用于注释已失效的代码。1.1.2代码细节注释§由//界定,专用于注释代码细节,即使有多行注释也仍然使用//,以便与用/**/注释的失效代码分开。classMyClass{privateintmyField;//Anend-linecomment.publicvoidmyMethod{//averyverylong//comment.if(condition

5、1){//condition1comment...}else{//elsesconditioncomment...}10}}1.1.1注释的格式注释中的第一个句子要以(英文)句号、问号或者感叹号结束。Javadoc生成工具会将注释中的第一个句子放在方法汇总表和索引中。为了在JavaDoc和IDE中能快速链接跳转到相关联的类与方法,尽量多的使用@seexxx.MyClass,@seexx.MyClass#find(String)。Class必须以@author声明作者,体现代码责任。但不需要声明@version与@date,由版本管理系统保留此信息。如果注释中有超过一个段落,用<p>

6、分隔。示例代码以<pre></pre>包裹。标识(javakeyword,class/method/field/argument名,Constants)以<code></code>包裹。标识(javakeyword,class/method/field/argument名,Constants)在注释中第一次出现时以{@linkxxx.Myclass}注解以便JavaDoc与IDE中可以链接。(II)1.1.2注释的内容可精简的注释内容注释中的每一个单词都要有其不可缺少的意义,注释里不写"@paramname-名字"这样的废话。如果该注释是废话,连同标签删掉它,而不是自动生成一堆空的

7、标签,如空的@paramname,空的@return。对于API函数如果存在契约,必须写明它的前置条件(precondition),后置条件(postcondition),及不变式(invariant)。对于调用复杂的API尽量提供代码示例。§对于已知的Bug需要声明,//TODO或//FIXME声明:未做/有Bug的代码。§在本函数中抛出的uncheckedexception尽量用@throws说明。101.1.1特殊代码注释代码质量不好但能正常运行,或者还没有实现

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。