zoukankan      html  css  js  c++  java
  • Java编程代码规范中值得留意的地方

    最近在加强Java代码规范,复习的过程中发现除了空格、驼峰、括号等常见的规范之外,还有一些平时不太注意但值得落实的规范,记录一下:

    1. 30秒规则,方法实现在30秒内需要被别人读懂

    2. 单个源文件最大长度2000行

    3. 单行字符不超过120个
      package、import、javadoc的url等不受限制

    4. import不要使用通配符,避免引入新的类冲突

    5. 0b、0x都用小写,long用大写(1L)

    6. 领域模型命名规范
      数据对象:xxDO
      数据传输对象:xxDTO
      展示对象:xxVO
      名字不要命名为xxPOJO

    7. 不要在finally块中使用return,不然会造成try块中的return不再执行

    8. 异常不要用来做流程控制、条件控制
      违背设计初衷
      异常的处理效率远低于条件判断

    9. 不要在方法内调用Pattern.compile()
      避免反复编译,尽量只调用一次

    10. 不用使用魔法值,用常量定义来代替
      -1,0,1不被视为魔法值

    11. 返回数组/集合时候返回空数组/空集合而非null

    12. Integer等数值封装类用equals代替==
      在-128~127范围,Integer对象在IntegerCache.cache产生,会复用已有对象,可以用==判断
      在这个范围外的数据会在堆上产生,不会复用已有对象

    13. 不同的Map类集合KV注意能不能设置为null

      HashTable:key不能为null,value不能为null

      HashMap:key可以为null,value可以为null

      ConcurrentHashMap:key不能为null,value不能为null

      看一下各自的put()方法实现就知道了

    14. Arrays.asList()或者List.of()转化后不可修改
      适配器模式,本质上仍然是数组

  • 相关阅读:
    2009年2月28号发现,上海移动升级GPRS时出问题,导致一些用户话费被扣钱,甚至停机
    使Aptana Studio 3支持jQuery代码提示
    遍历对象的属性
    当一个变量为函数时,应该注意的一点细节
    给JavaScript类型增加方法
    JavaScript 原型继承
    firebug 输出调试信息
    javaScript 利用闭包模拟对象的私有属性
    函数调用模式
    Actionscript 3 自定义 matedata
  • 原文地址:https://www.cnblogs.com/jacobchen/p/14371470.html
Copyright © 2011-2022 走看看