1/29
涵盖命名、常量、格式、OOP 等关键规则的 30 张词汇卡,助你快速回顾《Java 开发手册》核心要点。
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
Java 开发手册
阿里巴巴技术团队总结的大规模实践经验编码规范,旨在“码出高效,码出质量”。
嵩山版
手册当前公开版本代号,与社区开发者共同打磨完善的成果。
七大维度
编程规约、异常日志、单元测试、安全规约、MySQL 数据库、工程结构、设计规约。
强制规约
必须遵守,违背就可能导致故障或立刻修改的规则级别。
推荐规约
鼓励遵循,可提升协作效率和代码质量的规则级别。
参考规约
供参考的最佳实践,可根据场景灵活采纳的规则级别。
UpperCamelCase
类名书写规范:单词首字母大写,如 ForceCode;DO/DTO/VO 等后缀例外。
lowerCamelCase
方法、参数、成员变量统一书写规范:首单词小写,其余单词首字母大写。
常量命名规则
全部大写,单词间下划线分隔,如 MAXSTOCKCOUNT,语义要完整清晰。
抽象类命名
以 Abstract 或 Base 开头,如 AbstractDao、BaseController。
异常类命名
以 Exception 结尾,如 OrderException。
测试类命名
以被测类名开头、Test 结尾,如 UserServiceTest。
布尔字段命名
POJO 中布尔属性不要加 is 前缀,避免序列化框架解析错误。
包名规范
全小写、点分隔、单数语义,如 com.alibaba.ei.kunlun.util。
非法缩写
杜绝难以理解的随意缩写,如将 AbstractClass 写成 AbsClass。
Service/DAO 命名
对外暴露接口为 CacheService,实现类命名 CacheServiceImpl。
DO/DTO/VO/PO/BO/AO
数据对象、数据传输对象、展示对象等领域模型命名后缀,不可命名为 xxxPOJO。
魔法值
代码中直接出现的未定义常量,必须提取为常量避免隐患。
Long 字面量后缀 L
long 或 Long 赋值必须用大写 L,避免与数字 1 混淆。
常量复用五层
跨应用、应用内、子工程、包内、类内五个共享粒度,按功能归类维护常量。
枚举适用场景
值仅在固定范围内变化且可能有扩展信息时,优先使用 enum 定义。
代码缩进规则
统一 4 个空格缩进,禁止 Tab;大括号、空格位置有明确要求。
行长度限制
单行字符不得超过 120,超过需换行并按 4 空格缩进。
注释空格规范
双斜线与注释内容之间必须且仅有一个空格:// 示例注释。
equals 空指针风险
常量或确定非空对象调用 equals,避免 object.equals("test") 产生 NPE。
Integer 缓存范围
-128 至 127 的 Integer 使用缓存,可 ==,其余范围必须用 equals 比较。
金额存储单位
所有货币金额使用最小货币单位(如分)且整型类型存储。
浮点比较误差
基本类型不能直接 ==,包装类型不能用 equals;需设定误差或用 BigDecimal。
BigDecimal 等值比较
使用 compareTo(),忽略精度差异;不要用 equals()。
DO 字段类型匹配
数据对象属性类型必须与数据库字段类型一致,如 bigint 对应 Long。