Java编程规范学习笔记

  1. 命名规范
  • 类和接口命名:每个单词首字母大写,单词之间直接挨在一起(Service,DAO及API类的接口类不使用以“I”开头的命名形式,采用类似接口类名“userService”)
    示例:public class DeviceInfo;

  • 方法与变量命名:首单词首字母小写,后面的单词首字母大写,单词不可随意缩写
    示例:public String getName();
    private String deviceName = null;

  • 常量命名:所有单词大写,单词之间通过_连接
    示例:public static final int MAX_VALUE = 1000;

  • 测试命名:单元测试类名:命名格式为“原类名Test”,如对于UserController,测试类命名为:
    UserControllerTest
    单元测试方法名:命名格式为“test原方法名”,如对于login()方法,测试方法命名为:
    testLogin()
    单元测试包名:和原包名一致,如对于原包为com.xxx.eccloud,测试类包名为:
    com.xxx.eccloud

  1. 缩进排版
    4个空格为一个缩进单位,不要使用Tab进行缩进(除非自己设置过);
    行长度不可超过120个字符,超过需换行;在合适的位置换

  2. 注释
    注释标记“//”能够注释一行,//后面必须留有一个空格;禁止使用行尾注释
    多行注释第一行(/**)不需缩进,其后文档注释每一行都缩进1格。
    源程序注释量必须在20%以上;

  3. 声明
    (1)尽量在声明处直接完成初始化,即赋一个默认值;
    (2)不要在内部块中声明一个与外部块某个变量同名的变量;
    (3)各个方法之间要用一个空行隔开;
    (4)方法名和参数列表的圆括号以及括号后的第一个参数间都没有空格。

  4. 语句
    每行最多一个语句;
    不要使用import java.util.*这样的引入方式;
    组合语句的层次不要太深,嵌套的遍历不要超过三层,否则应对逻辑进行拆分和封装。

  5. 空白使用
    空行:
    (1)两个方法之间需使用;
    (2)包的声明、引入之间;
    (3)变量声明与方法之间;
    (4)单行注释或语句块之前。
    空格:
    (1)控制语句关键词之后;
    (2)语句块开始之前:类定义的类名之后的第一个大括号之前,方法定义的方法名之后的第一个大括号
    (3)之前,static块的static之后的第一个大括号之前;
    (4)for语句的三个元素的两个分号之后,使用空格;
    (5)方法的数组参数的省略号之后,使用空格;
    (6)二元运算符应该用空格和操作数分开(除.)。

小总结:左大括号前一般要空格,圆括号不用。

  1. 其他
    序列化:实现了java.io.Serializable接口的类中,必须显式的指定序列化ID
    引入第三方库规范:(1)使用maven来自动安装库依赖,这种方式虽然简单,但要求我们自己额外去检查依赖库冲突情况;(2)不要引入多余的库
    使用toUpperCase和toLowerCase时会用系统语言进行大小写转换,方法中加入参数“Locale.ROOT”,可以使转换与系统语言无关
  2. 日志
    日志级别:error > warn >info > debug > trace
    日志输出规范:
    (1)一个对象中通常只使用一个Logger对象,Logger应该是static final的;(生成logger对象涉及到java.util.logging.LogManager类,LogManager中用到了单例模式)
    (2)不允许抛出异常的同时打印堆栈,因为这样会多次打印堆栈,只允许打印一次堆栈;
    (3)不允许出现System print(包括System.out.println和System.error.println)语句;
    (4)不允许出现printStackTrace。
    (5)使用“{}”占位符,避免不必要的字符串拼接,提升性能(%s也可以作为占位符)
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值