跟我学(Effective Java 2)第56条:遵守普遍接受的命名惯例

第56条:遵守普遍接受的命名惯例

不严格的讲,这些命名惯例分为两大类:字面的和语法的。

字面的命名惯例比较少,但也涉及包,类,方法,域和类型变量。

包的名称应该是层次状的,用句号分隔每个部分。 任何将在你的组织之外使用的包,其名称都应该以你的组织的Internet域名开头,并且将顶级域名放在前面,例如edu.cmu , com.sun ,gov.nsa。标准类库和一些可选的包,其名称以java和javax开头,这属于这一规则的例外。

类和接口的名称,包括枚举和注解类型的名称,都应该包括一个或者多个单词,每个单词的首字母大写,例如Timer和TimerTask。 应该尽量避免用缩写,除非是一些首字母缩写和一些通用的缩写,比如max和min。

方法和域的名称与类和接口的名称一样,都遵守相同的字面惯例,只不过方法或者域的名称的第一个字母应该小写,例如remove,ensureCapacity。

常量域则全是大写,它的名称应该包含一个或者多个大写的单词,中间用下划线相连,例如VALUES,NEGATIVE_INFINITY。 常量域是静态的final域,它的值是不可变的。

类型参数名称通常由单个字母组成。 这个字母通常是以下五种类型之一:
T代表任意的类型 (泛型), E表示集合的元素类型 (集合应用) , K和V表示映射的键和值的类型 (map应用), X表示异常的类型。

特别注意: boolean 类型 尽量避免is 开头,否则部分框架解析会引起序列化错误.定义为基本数据类型boolean isFlag;的属性,它的方法也是isFlag(),RPC进而抛出异常。Mybatis框架在反向解析的时候,“以为”对应的属性名称是flag,导致属性获取不到,进而抛出异常。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值