代码规范
March 5, 2023About 1 min
代码规范
命名规范
https://blog.csdn.net/csdn_life18/article/details/126335665
http://t.zoukankan.com/leon618-p-7469638.html
常量规范
类定义和接口定义常量对比
类定义常量和接口定义常量:
- 类定义常量, 需要定义成 final 且定义一个 private 的构造方法, 这样做是为了不让其他类继承, 禁止实例化此类,
调用时直接以"类.常量"的方式调用.
- 接口中定义的"变量", 其实就是常量, 接口中的"变量"默认都是 "public static final"类型, 即为常量,
因此接口可以省略"public static final"而直接写成 "type variable".
用如上的类定义常量, 不能实例化也不能被继承, 看起了完美无缺;
接口定义常量, 虽不能实例化, 确可以被其他类实现;
因此有这么一种设计模式"The constant interface pattern". 所谓的"常量接口模式", 就是其他类要使用接口中定义的常量,
就实现该接口. 我认为这是对接口的烂用. 接口中定义的常量应为所有类频繁使用的常量, 但并不是每个类都使用了接口中定义的所有常量,
因而导入了不必要的常量到这个类中, 并且导入后这个类的子类也会基础导入的常量, 这样会导致混乱, 应当避免此种用法.
- 在 interface 和 class 中定义相同的常量, interface 生成的 class 文件比 class 生成的 class 文件会更小, 而且更简洁, 效率更高
所以我更喜欢把常量定义在接口中。