JAVA编码规范.doc_第1页
JAVA编码规范.doc_第2页
JAVA编码规范.doc_第3页
JAVA编码规范.doc_第4页
JAVA编码规范.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JAVA编码规范编码的目的,不仅仅是让它可以在计算机上运行,而且要具有很好的可读性,使开发团队中的其它人易于理解,易于维护,易于扩展对于一个大的项目,或者是持续的项目,编码的规范都是至关重要的1. 一般规范1.1. 不要在一个语句中申明多个不同类型的变量例如:package com;class Demopublic void foo()int aaa, bbb; /非法int ccc, ddd;1.2. 同名的成员放在一起例如:package com;class Demovoid foo() void bar() void foo(int a) 方法foo的两个重载版本应当放在一起package com;class Demovoid foo() void foo(int a) void bar() 1.3. 不要直接使用常量值,使用符号名例如:package com;class Demofinal static int INT_CONSTANT = 100;1.4. 不要在抽象类的构造方法中调用抽象方法package com; abstract class Naac public Naac () System.out.println(Constructor: ); test (); / 违反规范 abstract public void test (); class MyClass extends Naac public MyClass (int size) System.out.println(setting size to : +size); _size = size; public void test () _size+; System.out.println(Increament : +_size); private int _size = 0; MyClass mc = new MyClass (50)的执行结果:Constructor:Increament : 1 / super classs constructor setting size to : 50 / finish executing MyClass2s constructor.1.5. 如果重载Object.equals(Object obj)方法,那么必须重载Object.hashCode()方法package com; public class Override /违反规范,没有重载Object.hashCode()public boolean equals (Object o) / implementations 1.6. main方法必须是public static void,该方法必须置于类申明的最后1.7. 不要直接catch(Exception e), catch(RuntimeException e), catch(Throwable e)如果希望一个方法是不抛出异常的,那么,在catch序列的最后catch(Exception e),一般应当正具体代码捕获具体的异常类型Package com;class SampExceptionpublic void sample()tryClass.forName(“com.gtong.application.architect.Context”);catch(ClassNotFoundException cnfe) / 不要是catch(Exception e)/ 异常处理代码1.8. 类的申明中必须要一个缺省的构造方法package com;class SampConstructorpublic SampCnstructor() / 缺省构造方法/ 初始化1.9. 一行不要超过80个字符,如果太长,则需折行,折行要缩进1.10. 不要在任何main方法以外调用exit()1.11. 不要直接访问一个类的实例数据成员,用set和get方法1.12. 表达式应当尽量简洁,避免过分复杂例如:d = (c = a + b) + f; /复杂,不易理解改为:c = a + b;d = c + f;1.13. 类申明中,类成员应当依性质组织在一起静态数据成员,静态方法,实例数据成员,实例方法,方法成员放在数据成员的后面2. 常量2.1. 不能直接使用常量值,使用符号名2.2. 常量符号名全部采用大写字母2.3. 类成员常量必须申明为final static3. 缩进,空格和空行3.1. 缩进使用一个TAB,不要用空格3.2. 类申明中的缩进class SampIndentprivate int var = 1; / 缩进一个TABpublic void foo() int ccc = 0; /缩进一个TAB3.3. 子范围必须对父范围有一个缩进for(int i=0; i10; i+)int j = 0; / 缩进3.4. 太长的行在折行时必须有一个缩进int i = classInstance1.getIntValue() + clasInstance2.getIntValue() + classInstance3.getIntValue(); /一个缩进TAB3.5. 方法与方法之间必须保留一个空行3.6. 类与类的申明之间保留一个空行3.7. 实现不同功能的语句块之间保留一个空行3.8. 操作附与操作数之间要有一个空格int i = a + b;3.9. 分号(;)前面不能有空格3.10. 左圆括号右边不能有空格,右圆括号左边不能有空格public void foo(int n, int j)method();3.11. 等号两边必须一个空格Object o = getObject();4. 注释4.1. 注释风格4.1.1. 单行采用/4.1.2. 块注释使用(请注意格式)/* * */4.2. 类注释对于类的注释写在类申明的前面package com;import java.io.File;/* * 类注释 */public class SampComment使用块注释格式,应当包含一下内容 类的功能说明,即为什么要写这个类 作者 编写时间 类的用法说明例如:/* * 类的功能说明 * * usage * 类的用法说明 * * author 某程序员 * * version 09/29/97 */4.3. 方法注释放在方法定义前面,注释中应当包含 方法功能说明 方法参数说明 方法返回值说明,如果可能返回null,必须说明在何中情况下 异常说明,什么时候抛出什么异常 作者 时间/* * 方法功能说明 * *param param 参数说明 * * author 某程序员 * * return 返回值说明 * * exception 异常说明 * * version 时间 */public Object someMethod(int param) throws SQLException4.4. 修改现有程序的注释在修改他人程序或者现有程序时,先将需要修改的部分注释掉,然后注释,包括: 修改原因(修正什么bug或者改进现有功能) 修改人 修改时间/* * 修改原因 * *author 修改人 * *datetime 时间 */old code/ new code5. JAVA包的引用禁止使用*号,必须明确写出引用的每一个类import java.io.*; / 错误import java.security.AccessControl;import java.n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论