- 所有要使用的常量都要定义,代码不允许出现没定义的值。
- Long型或者Long型开始赋值时,值里面的(L)都要写成大写的L。
- 常量应该按照功能归类,分开维护。不要所有常量都写在一起,不利于查找阅读。
- 常量的复用层次有五层:跨应用共享常量、应用内共享常量、子工程内共享常量、包 内共享常量、类内共享常量。
- 跨应用共享常量:放置在二方库中,通常是 client.jar 中的 constant 目录下。
- 应用内共享常量:放置在一方库中,通常是 modules 中的 constant 目录下。 反例:易懂变量也要统一定义成应用内共享常量,两位攻城师在两个类中分别定义了表示 “是”的变量:
类 A 中:public static final String YES = "yes";
类 B 中:public static final String YES = "y"; A.YES.equals(B.YES),预期是 true,但实际返回为 false,导致显示问题。
- 子工程内部共享常量:即在当前子工程的 constant 目录下。
- 包内共享常量:即在当前包下单独的 constant 目录下。
- 类内共享常量:直接在类内部 private static final 定义。
附录1:
- 一方库:本工程中的各模块的相互依赖
- 二方库:公司内部的依赖库,一般指公司内部的其他项目发布的jar包
- 三方库:公司之外的开源库, 比如apache、ibm、google等发布的依赖