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()转化后不可修改
      适配器模式,本质上仍然是数组

  • 相关阅读:
    JetBrains注册码计算(IntelliJ IDEA 15.0注册码激活)
    java分页数据导出excel
    linux系统关机与重新启动命令
    无向图的连通性分析
    流域水文模拟
    深信服笔试题(网络project师售后)
    CSS这些代码你都不会,你还有什么好说的!!!
    springMVC3学习(四)--訪问静态文件如js,jpg,css
    POJ 3311 Hie with the Pie(状压DP + Floyd)
    NSDictionary所有API的学习。
  • 原文地址:https://www.cnblogs.com/jacobchen/p/14371470.html
Copyright © 2011-2022 走看看