第68条 遵守普遍接受的命名惯例
- 包名称通常不超过8个字符。鼓励使用有意义的缩写形式,例如使用util而不是utilities。
- 类名称除了首字母缩略词和某些常用缩写(如max和min)之外,应避免使用缩写。
- 常量域是个静态
final
域 - 泛型T表示任意的类型,E表示集合的元素类型,K和V表示映射的键和值类型,X表示异常。函数的返回类型通常是R。任何类型的序列可以使T、U、V或者T1、T2、T3。
- 可被实例化的类(包括枚举)通常用一个名词或者名词短语命名,不可实例化的工具类通常以复数名词命名,例如Collectors或者Collections
- 转换对象类型的实例方法一般命名为toType,例如
toString
、toArray
,返回视图一般用asType,比如asList
思考
- 我们很多代码中定义常量要不会缺少
static
,要不会缺少final
- 对于泛型的类型定义,在满足规范的同时,也应该尽量表意
TParam
,TReturn
等 - 对于一些common的缩写,比如DO、DTO、UDP等等,Effective Java中并没有明确表示应该怎么写,阿里的Java开发手册中则是明确表示了需要全部大写。当然这个风格其实怎么写问题不大
- 布尔类型应尽量避免is开头,特别是POJO和VO
- 如果适用了设计模式,应该将模式体现在名字中,比如
OrderFactory
、LoginProxy
、ResourceObserver