代码检查规则介绍.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
命名规范 Type 类型 命名规范 AbstractClassName 抽象类 ^Abstract.*$|^.*Factory$ ConstantName 常量(static , final 字段) ^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$ LocalFinalVariableName 局部的final变量,包括catch中的参数 ^[a-z][a-zA-Z0-9]*$ LocalVariableName 局部的非final型的变量,包括catch中的参数 ^[a-z][a-zA-Z0-9]*$ MemberName 非static型变量 ^[a-z][a-zA-Z0-9]*$ MethodName 方法名 ^[a-z][a-zA-Z0-9]*$ PackageName package名 ^[a-z]+(\.[a-z][a-z0-9]*)*$ ParameterName 方法中的参数名 ^[a-z][a-zA-Z0-9]*$ StaticVariableName 仅仅是static型的变量(不包括static final型) ^[a-z][a-zA-Z0-9]*$ TypeName 类型(Class或Interface)名 ^[A-Z][a-zA-Z0-9]*$ JavaDoc注释 类和接口的JavaDoc 方法的JavaDoc 变量的JavaDoc 长度限制 文件长度:Java文件的行数不能超过某个值,默认值是1500 每行长度:每行的字母个数不能超过某个值,默认值是120 方法长度:方法的行数不能超过某个值,默认值是150 方法的参数个数:方法参数的个数不能超过某个值,默认值是7 return 语句的数量:方法中return语句的个数不能超过某个值,默认值是2 重复的代码 检查内容重复的代码:当相同代码的行数超过某个值时,就认为是重复的代码,默认值是15 多余的 不必要的括号{} 不必要的圆括号:检查不必要的圆括号”(,)”。 例如:if(((((true))))) 未简化的 未被简化的条件表达式:检查过度复杂的条件表达式,例如: (b == true), b || true,!false 未被简化的布尔返回值:检查未被简化的boolean返回语句,例如: if (valid()) return false; else return true 可以简化成: return !valid(); 空白区域(empty block) 检查{}包含起来的区域是否为空 空语句(empty statement) 检查是否有空的语句 ; 比较 equals和hashCode方法:检查一个类是否同时重写了equals和hashCode方法 子类在重写hashCode()方法时,要调用父类的hashCode() 在实现equals()方法时要使用instanceof操作符 要把常量放在equals()方法的左边,例如:“hello”.equals(s),而不是s.equals(“hello”) 使用equals()比较对象的引用,而不要使用==或!= switch 为switch语句提供default标签 switch语句的default应该放在最后 检查case中是否有 break,return ,throw 或 continue语句,确保每次switch只执行一个分支 Exception 限制 try-catch 的嵌套层次,默认值是3 不允许throws某些异常,例如:java.lang.Exception、java.lang.Error、java.lang.RuntimeException和your.package.Exception等 从catch语句中抛出一个新的异常时,没有把原来的异常传入新异常中,会导致异常跟踪信息的丢失(把异常作为参数传入自定义的异常处理类) 在当前catch语句中, 处理被捕获的异常(记录异常;抛出新的异常;处理异常), (项目组:不管有没有进行处理,一定要再次throw出去,重点是指调用平台的异常,不要自己吞下去,以方便平台组用来解决问题) 不要捕获NullPointerException,因为捕获了之后会把这个异常屏蔽,可能会引起后续抛出很难分辨的异常 开发人员不要抛出NullPointerException,因为大家通常会认为这个异常是JVM抛出的,考虑用IllegalArgumentException代替,这样会更清晰,更像是开发人员发起的异常 不要从finally语句返回值 对Java的异常类的使用: 不允许使用RuntimeException等无法通过类名反应出异常产生原因的异常类 其它如IllegalArgumentExcept

文档评论(0)

luobin520 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档