概述
-
《Java 开发手册》是阿里巴巴集团技术团队的集体智慧结晶和经验总结,他旨在提升开发效率和代码质量
-
《Java 开发手册》是一本极具价值的 Java 开发规范指南,对于提升开发者的综合素质和代码质量具有重要意义
-
学习《Java 开发手册》是一个提升 Java 编程技能、了解行业最佳实践和规范的好方法
编程规约 - 常量定义 P1
1、基本介绍
- 【强制】不允许任何魔法值(即未经预先定义的常量)直接出现在代码中。
// 反例// 本例中,开发者 A 定义了缓存的 key,然后开发者 B 使用缓存时少了下划线
// 即 key 是"Id#taobao"+tradeId,导致出现故障
String key = "Id#taobao_" + tradeId;
cache.put(key, value);
2、学习补充
- 魔法值是指那些直接出现在代码中的字面量值,这些值没有通过常量或变量进行定义和命名,缺乏明确的语义和可读性
-
可读性差:魔法值使得代码难以阅读和理解,因为它们没有明确的命名和解释
-
可维护性差:当需要修改魔法值时,开发者可能需要在代码的多个地方进行搜索和替换,这增加了维护的复杂性
- 避免魔法值的方法如下
-
使用常量:将魔法值替换为常量,并通过命名来赋予它们明确的语义,当需要修改这些值时,只需要修改常量的定义
-
封装逻辑:将相关的魔法值封装在方法或类中,通过参数传递或返回值来获取这些值,提高代码的可读性和可维护性
编程规约 - 常量定义 P2
1、基本介绍
-
【强制】在 long 或者 Long 赋值时,数值后使用大写字母 L,不能是小写字母 l,小写容易跟数字混淆,造成误解。
-
说明:
Long a = 2l;
写的是数字的 21,还是 Long 型的 2?
2、学习补充
(1)带有后缀的数据类型
- float:float 赋值时,需要在数字后面加上 F 或 f 后缀,推荐使用 F 后缀
// 推荐使用 F 后缀
float a = 2.0F;// 不推荐使用 f 后缀
float b = 2.0f;
- double:double 赋值时,可以在数字后面加上 D 或 d 后缀,但是推荐不加,因为它是 Java 中的默认浮点类型
// 不推荐使用 d 后缀
double a = 2.0d;// 不推荐使用 D 后缀
double b = 2.0D;// 推荐不加后缀
double c = 2.0;
- long:long 赋值时,需要在数字后面加上 L 或 l 后缀,推荐使用 L 后缀
// 推荐使用 L 后缀
long a = 2L;// 不推荐使用 l 后缀
long b = 2l;
(2)不同的进制数
- 二进制:以 0b 或 0B 开头,推荐使用 0b 后缀
// 使用 0B 后缀
int b = 0B1010;// 推荐使用 0b 后缀
int a = 0b1010;
- 八进制:以 0 开头,不推荐使用
// 不推荐使用
int a = 01010;
- 十进制:默认
// 默认
int a = 1010;
- 十六进制:以 0x 或 0X 开头,推荐使用 0x 后缀
// 使用 0X 后缀
int b = 0X1010;// 推荐使用 0x 后缀
int a = 0x1010;