1:命名规范

  类名用大驼峰式
  参数变量·函数·成员变量·局部变量 小驼峰式
  常亮命名全部大些单词用_隔开
  抽象类用Abstract开头·异常类用Excetpion结尾·测试类用Test结尾
  *POJO类boolean不用使用is开头
  包名全部使用小写
  代码中尽量不要出现看不懂的缩写
  *使用设计模式要在名称中体现设计模式
  ***接口实现类要用impl结尾
  枚举类结尾以Enum结尾
 
2.常量的使用规范
  逻辑代码中尽量不要出翔魔法值(潜规则)--尽量在配置中或者常亮定义
  ***使用Long 或者long 赋值用大些L double float 同理
 
3.代码格式规范
  函数·类的注释用/***/ 。 函数内注释用//
 
4.oop规约规范
  *所有覆写方法鼻血用@Override注释
  ***使用.equal方法注意出现空指针 “test”.equals(a)
  ****所有整型包装类型推荐使用.equals
  ***浮点数的判断不能用equal 或者== 。 精度用 1e-6类似这样的处理
  ***所有POJO对象内的基本类型都使用包装类型
  *****构造函数内不加入任何逻辑 -- 在之后的自定义函数中处理逻辑处理化内容
  ***string.split 要检查对象的长度
 
5.集合处理规范
  *****只要覆写equal 就必须覆写hashcode 要不在hashMap 和HashSet 会出问题
  ***ArrayList 的subList 不可以强转ArrayList
  ***集合转数组 toArray 传入相同类型的长度为0的数组--String[] arr = list.toArray(new String[0])
  Array.sort 比较的前提 (1.x y 和 y x 结果相反 2. x > y 和 u> z x > z 3.x==y 则y==x )
 
6.多线程处理规范
  ***线程池的使用尽量用ThreadPoolExecutor 可以明确资源的使用
  **高并发的时可以尝试使用asc
  Look 的使用规范
    Look lock = new XxxxLock();
    lock.lock();
    try{
      ......
    }finally{
      locak.unLock();
    }
  **跨进程 多线程 高并发的应用可以使用乐观锁
  在资源消耗或者或者其他逻辑中尽量使用<=0 判断 防止0被击穿
 
7.异常处理规范
  ***不要在finall中使用return 会把其他return替换
  ***在不确定异常类型或者外部调用jar处理异常要捕捉Throwable
  ***在try异常一定要处理掉
 
8.日志处理规范
  日志框架的使用要用slf4j 不要使用logback log4j
  日志保留天数至少15天
  日志输出的时候用占位符可以减少String拼接的消耗。
  warn日志处理服务器异常输入 **可以出奇效
 
9.数据库使用规范
  boolean 用tinyint
  表名·字段名全小写用_连接
  主键索引-pk_ 唯一索引-uk 普通索引-idx_
  varchar 长度不要超过5000 可以用text替换
 
10.ORM映射
  明确全部的字段名称 不能用*
  pojo字段不能一is开头
 

java--编码规范易漏的更多相关文章

  1. 资料推荐--Google Java编码规范

    之前已经推荐过Google的Java编码规范英文版了: http://google-styleguide.googlecode.com/svn/trunk/javaguide.html 虽然这篇文章的 ...

  2. Eclipse formater(google Java 编码规范)

    1. 谷歌Java编码规范 http://google-styleguide.googlecode.com/svn/trunk/javaguide.html 2. 下载配置文件: https://co ...

  3. 标准的Java编码规范手册

    编码规范体现出一个开发者的基本素质,良好的编码规范可以提高团队编码的效率,避免很多不必要的问题.今天分享一个标准的Java编码规范给大家,希望对于大家今后的开发工作带来帮助. 编码规范的意义      ...

  4. 阿里Java编码规范

    详细,全面 很不错 阿里 Java编码规范

  5. Java基础学习总结(92)——Java编码规范之排版、注释及命名

    为使开发人员养成良好的开发习惯,编写可读性强.易维护的程序,结合以往资料,现整理Java编码规范,将之作为开发人员的参照依据. 一.排版 1.相对独立的程序块之间必须加空行 下列情况应该使用一个空行: ...

  6. CheckStyle,定制属于自己的Java编码规范

    前言 如今,代码规范几乎是当下稍有追求的团队都要求做到的,但是对于Java编码规范,不同的公司或团队却有着不同的标准.尽管官方提供了一些标准,但是在基本规则的基础上,各大公司又有自己的规范,比如Sun ...

  7. Google 推出的 Java 编码规范(转)

    原文地址:http://www.dahuatu.com/1225/988516.html 原文地址:http://www.dahuatu.com/1225/988516.html 原文地址:http: ...

  8. Google的Java编程风格指南(Java编码规范)

    这份文档是Google Java编程风格规范的完整定义.当且仅当一个Java源文件符合此文档中的规则, 我们才认为它符合Google的Java编程风格. 与其它的编程风格指南一样,这里所讨论的不仅仅是 ...

  9. 个人整理--Java编码规范

    编码规范对于开发人员来说是非常重要的,有以下几个原因: 1.一个软件的生命周期中,80%的花费在于维护 2.几乎没有任何一个软件,在其整个生命周期中,均由最初的开发人员来维护 3.编码规范可以改善软件 ...

  10. 阿里java编码规范考试总结

    前几天,考了阿里编码规范刚好80险过,总结出以下例题,答案有错,欢迎评论 1.关于方法的返回值是否可以为null,下列说法正确的是(BCD) A.方法的返回值可以为null,如果是集合,必须返回空集合 ...

随机推荐

  1. input输入框如何只能输入非零开头的正整数

    input输入框如何只能输入非零开头的正整数 ********* 废话不多说,先来代码 ********* case1: 原生html + javascript <body> <!- ...

  2. mongo注解详解

    1.@Entity如果你想通过Morphia把你的对象保存到Mongo中,你首先要做的是使用@Entity注解你的类:@Entity(value="comm_user_favorite_co ...

  3. python3笔记十四:python可变与不可变数据类型+深浅拷贝

    一:学习内容 python3中六种数据类型 python赋值 python浅拷贝 python深拷贝 二:python3六种数据类型 1.六种数据类型 Number(数字) string(字符串) L ...

  4. openssl生成秘钥对

    openssl genrsa -out pri.pem openssl rsa -in pri.pem -out pub.pem -pubout 这样就生成秘钥对了,其中pri.pem是私钥,pub. ...

  5. jquery实现对象数组 筛选出每条记录中的特定属性字段 及根据某个属性值筛选出指定的元素

    jquery实现对象数组 筛选出每条记录中的特定属性字段 直接上图: 源码: /** * 对后端返回的数据,筛选出符合报表的列项,多余的列项去除 */ function filterParams(da ...

  6. UVA 1025 -- A Spy in the Metro (DP)

     UVA 1025 -- A Spy in the Metro  题意:  一个间谍要从第一个车站到第n个车站去会见另一个,在是期间有n个车站,有来回的车站,让你在时间T内时到达n,并且等车时间最短, ...

  7. redis学习之路

    cp /home/zzq/桌面/M+.txt /home/zzq/mySercet#将桌面文件下的M+.txt 复制到mySercetrm -rf M+.txt#强制递归删除M+.txt1.网络适配器 ...

  8. T84341 Jelly的难题1

    T84341 Jelly的难题1 题解 当窝发现窝的锅在读入这个矩阵的时候,窝..窝..窝.. 果然,一遇到和字符串有关的题就开始吹空调 好啦我们说说思路吧 BFS队列实现 拿出一个没有走过的点,扩展 ...

  9. leetcode 328 奇偶链表

    更新代码: 开头检测是否需要调整(是否具有第三个节点) 使用三个ListNode* 变量记录奇偶链表的头尾headA,tailA为奇链表,headB为偶数链表,由于只需要最后令tailA->ne ...

  10. 自定义View饼状图的绘制

    package com.loaderman.customviewdemo; import android.content.Context; import android.graphics.Canvas ...