`
ccii
  • 浏览: 56129 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Java编程规范整理

阅读更多

一、排版
1. 代码采用缩进风格编写,缩进空格数为4,不允许使用Tab缩进(空格缩进可适应不同操作系统和开发工具),采用Ctrl+Shift+F进行格式化。(Eclipse设置空格缩进方法:Window->Preferences->Java->Code Style->Formatter->New->选择Spaces Only->OK)
2. 较长的语句,表达式或或参数(>80字符)要分行书写,表达式需在低优先级处划分新行,操作符放在行首。
3. 一行只书写一条语句。
4. if,for等语句组必须加大括号,case的执行语句组定义变量必须加大括号。
5. 相对独立的程序块之间、变量说明之后必须加空行。
6. 两个以上的关键字、变量、常量之间操作符两边都应加上空格,双目操作符的前后加空格,单目操作符前后不加空格。
7. 类属性和类方法不要交叉放置。
8. 修饰符按指定顺序书写 [访问权限][static] [final]。

二、注释
1. 包注释(写一个名为package.html的文件放入包所在路径,内容有包的作用、详细描述、本包的内容、模块名称和版本、公司版权)。
 
  <html>
    <body>
      <p>一句话简述</p>
      <p>详细描述</p>
      <br>公司的版权信息
    </body>
  </html>

2. 源文件注释
  源文件注释采用/** …… */文档注释,在每个源文件的头部要有必要的注释信息,包括:文件名、文件编号、版本号、作者、创建时间、文件描述包括本文件历史修改记录等。

  /**
    * 文件名 :
    * CopyRright (c) 2014-xxxx:
    * 文件编号:
    * 创建人:
    * 日期:
    * 修改人:
    * 日期:
    * 描述:
    * 版本号:
    */

3. 类、模块和接口注释
  类、模块和接口注释也采用 /** …… */文档注释,在每个类、模块或接口头部都要有必要的注释信息,包括:工程名;类、模块或接口编号;命名空间;类可以运行的JDK版本;版本号;作者;创建时间;类、模块或接口功能描述(如功能、主要算法、内部各部分之间的关系、该类与其类的关系等,必要时还要有一些如特别的软硬件要求等说明);主要函数或过程清单及本类(模块)历史修改记录等。

  /**
    * 一句话功能简述
    * 功能详细描述
    * @author
    * @version
    * @see [相关类方法]
    */

3. 类属性注释

  /**
    * 注释内容
    */

4. 类方法注释

  /**
    * 一句话功能简述
    * 功能详细描述
    * @param [参数1  参数1说明]
    * @param [参数2  参数2说明]
    * @return
    * @throws [非Runtime异常类型,类型说明]
    * @exception[Runtime异常类型,类型说明]
    * @see [类方法相关说明]
    * @since [方法的起始版本]
    * @deprecated [不建议使用该方法]
    */

5. 代码注释(//),放在代码的上方,并与其上面的代码用空行隔开
6. 修改代码同时修改相应的注释
7. 避免在注释中使用缩写
8. 关键变量的定义和分支语句必须编写注释
9. 一些复杂的代码需要说明

三、命名
1. 类名和接口名,每个单词首字母大写
2. 方法名,第一个单词的首字母小写,后面的大写
3. 属性名, 第一个单词的首字母小写,后面的大写
4. 常量名,常量名使用全大写的英文描述,单词之间用下划线连接
5. 包名,全部用小写
6. 组件类的命名,组件名+组件类型缩写

四、编码

异常类:
1. 数据库操作、IO操作等要在finally中按顺序close,并且每个close都要分别try-catch,防止某个关闭失败时其它也跟着失败
2. 对方法的调用要进行空指针判断避免造成空指针异常
3. 系统非正常运行产生的异常捕获后,如果不对异常处理,则应该记录日志
4. 自己抛出的异常必须填写详细的描述信息(thrownew IOException(“error,Data:”+data))
5. 运行时异常使用RuntimeException的子类表示,不用在可能抛出的方法声明上加上throws子句,非运行时异常是从Exception继承而来,必须在方法声明上加throws子句
6. 异常和错误码不应该混合使用,由程序结构确定,推荐使用异常
7. 记录异常不要保存exception.getMessage(),而要记录exeception.toString()。因为某些异常抛出时常常描述为空
8. 异常捕获不应直接用Exception,应把异常细分
9. 应明确规定接口方法参数的合法性检查应由方法的调用者(默认)还是方法本身
10. 字符串转化为数字时要做异常处理

数据类:
1. 用括号明确表达式的优先级,避免使用默认优先级
2. 避免使用不易理解的数字,用有意义的标识来替代,涉及物理状态等的常量使用有意义的静态变量或枚举
3. 数据声明的时候使用 类型[] 变量名;
4. 集合必须指定模板类型
5. 所有的数据类必须覆写toString(),hashCode(),equals()。父类如果实现了比较合理的toString(),子类可以继承不必再重写。HashCode和equals可以使用eclipse自动生成
6. 一定要对数组下标作范围校验
7. equals操作时将常量放在equals操作符的左边,避免空指针异常

业务类:
1. 测试完应删除System.out,System.err语句,应使用工具类记录日志
2. 一个文件只定义一个类(除内部类)
3. 判断语句不要使用“x=true”,直接if(x){}
4. 尽量使用新循环 for(Stringstr:list)
5. 新起一个线程,都要使用Thread.setName(“..”)设置线程名,以便监控
6. 循环体内不要包含了大量没有必要在循环中处理的语句,编程规范中建议“不要在循环体内调用同步方法和使用 try-catch块”

性能与可靠性:
1. 对Debug,Info级别的日志输出前必须对当前的调试等级进行判断,if(logger.debugEnable()){logger.debug(“…”)}
2. 数据复制使用System.arraycopy(*)
3. 不要使用循环将集合转为数组,可用toArray(array)方法
4.大量字符串相加应使用StringBuilder(高性能,不涉及线程安全)和StringBuffer(线程安全)
5. 对日志工具对象logger应申明static,防止重复new出logger对象
6. 实现serializable接口可序列化类应该显式声明serialVersionUID,因为生成默认ID可能会因为编译器的不同而不同,在反序列的过程中可能出现意外的异常
    public calssHello implements Serializable{
        private static final long serialVersion = -253243248L;
    }
7. public类型的底层函数需对输入参数进行判断,参数不合法应主动抛出RuntimeException
    If(b==0){thrownew IllegalArgumentException(“b不能为0”);}
8. 尽量使用API自带的函数,不要写类似功能的函数
9. IO流使用有Buffer功能的class提高效率

0
1
分享到:
评论

相关推荐

    Java经典编程规范,参考京东和华为的Java编程规范标准,将两家公司共同拥有的规范提取并整理得出,值得收藏

    本文档从“Java编程代码规范”,“Java编程注释规范”,“Java编程命名规范”,“代码缩进/断行/空行/空格/大括号规范”,“日志记录规范”和“代码上库规范”六个方面提取两家公司的Java编程规范共性。希望能供Java...

    java编程规范.pdf

    ### Java编程规范详解 #### 1. 引言 ##### 1.1 为何需要编码规范 在软件开发过程中,编码规范(Code Conventions)扮演着至关重要的角色。据研究显示,一个软件产品的生命周期内大约80%的成本投入在维护阶段。这...

    Java编程规范(第三版)

    《Java编程规范(第三版)》是一本针对Java程序员的重要参考书籍,旨在提供一套标准的编程准则,以提高代码质量、可读性和可维护性。本书深入探讨了编写高效、清晰且易于理解的Java代码的最佳实践。以下是根据该书...

    Java编程规范-整理

    ### Java编程规范详解 #### 一、排版规范 **1. 缩进与排版:** - **标准缩进:** Java程序中的代码块应当使用4个空格来进行缩进,以此来保持代码的整洁与易读性。 - **分界符对齐:** 大括号`{}`应该单独占一行并...

    JAVA编程规范【整理】.doc

    根据提供的文件信息,本文将对《JAVA编程规范【整理】.doc》中的关键知识点进行详细的阐述与解析。本文档主要围绕Java编程规范的核心内容展开,包括排版标准、规则、建议、注释标准以及命名标准等方面,旨在为Java...

    Java 编程规范

    Java编程规范是Java开发者在编写代码时需要遵循的一系列规则和约定。这些规范旨在提高代码的可读性、可维护性和一致性。本篇文档整理了谷歌Java开发规范的要点,为Java开发实践提供参考。 **术语说明** 在本文档中...

    华为java安全编码规范考试3.1.md

    华为java安全编码规范考试3.1 血与泪整理除的答案,当前时间保证是最新的,基本所有题都能找到。有几题答案没写出来,但是写了所有的错误答案…………排除法

    google-java-style_google-java编程规范

    google-java-style_google-java编程规范 别人翻译的我给整理成pdf文档

    java编程规范.zip

    结,经历了多次大规模一线实战的检验及不断完善,系统化地整理成册,回馈给广大 开发者。现代软件行业的高速发展对开发者的综合素质要求越来越高,因为不仅是编 程知识点,其它维度的知识点也会影响到软件的最终交付...

    java编程规范(DOC文件)

    ### Java编程规范详解 #### 一、为什么要制定编码规范? 在软件开发过程中,代码规范扮演着极其重要的角色。良好的代码规范不仅可以提升代码的可读性和可维护性,还能减少后期维护的成本,这对于团队协作尤为重要...

    华为JAVA编程规范试题 (2).pdf

    【JAVA编程规范】 Java编程规范是开发者遵循的一套标准,以确保代码的可读性、可维护性和一致性。...以上是根据题目内容整理的Java编程规范的主要知识点,这些规范旨在提高代码质量,降低维护难度,提升团队协作效率。

    java 语言编程规范

    Java语言编程规范是Java开发中的基石,它定义了一套标准的编程约定,旨在提高代码的可读性、可维护性和团队协作效率。本规范涵盖了命名规则、注释、类与对象设计、接口与继承、异常处理、并发编程等多个方面,是每个...

    JAVA网络编程

    使用JAVA编写网络通信程序 .doc Java网络编程 ...《JAVA编程规范》.doc Java基础 三步学会Java Socket编程(一) .doc Java基础 三步学会Java Socket编程(二) .doc Java基础 三步学会Java Socket编程(三).doc

    java-命名规范整理.docx

    Java 命名规范是指在 Java 编程语言中为变量、类、方法、包等命名的规则和约定。遵守良好的命名规范可以提高代码的可读性、易维护性和协作性。 包命名规范: * 包名全部小写 * 针对不同的项目类型,细分为个体项目...

    Java开发编程规范文档1.7.0.rar

    Java开发编程规范文档1.7.0.rar 经历了多次大规模一线实战的检验及不断完善,公开到业界后,众多社区开发者踊跃参与,共同打磨完善,系统化地整理成册, 因为不仅是编程知识点,其它维度的知识点也会影响到软件的...

    JAVA开发规范整理版.doc

    【JAVA开发规范整理版】 Java开发规范是一套指导开发者遵循的标准和约定,旨在提升代码质量、可读性、可维护性以及团队协作效率。规范涵盖了代码组织、风格、注释等多个方面,确保代码的可靠性和一致性。 **1. ...

    Java注释规范整理1

    Java编程语言的注释规范是确保代码可读性和团队协作效率的关键要素。下面将详细阐述这些规范,并提供一些实用的技巧。 首先,注释的主要目的是提高代码的可理解性,帮助开发者快速理解代码的功能和目的。在多人协作...

    java编程规范

    ### Java编程规范详解 #### 一、概述 本文档基于一份由周甫老师编写的《JAVA编码标准及规范手册》进行整理与总结。该手册详细介绍了编写高质量Java代码的规范和标准,对于初学者和有一定经验的开发者都非常有用。...

Global site tag (gtag.js) - Google Analytics