阿里巴巴Java开发手册

浏览28200
更新时间2022-04-11

1. 【强制】不允许出现任何魔法值 ( 即未经定义的常量 ) 直接出现在代码中。

反例:  String key =" Id # taobao _"+ tradeId;

cache . put(key ,  value);

2. 【强制】 long 或者 Long 初始赋值时,必须使用大写的 L ,不能是小写的 l ,小写容易跟数字1 混淆,造成误解。

说明: Long a = 2 l; 写的是数字的 21,还是 Long 型的 2?

3. 【推荐】不要使用一个常量类维护所有常量,应该按常量功能进行归类,分开维护。如:缓存相关的常量放在类:CacheConsts 下 ; 系统配置相关的常量放在类: ConfigConsts 下。

说明:大而全的常量类,非得使用查找功能才能定位到修改的常量,不利于理解和维护。

4. 【推荐】常量的复用层次有五层:跨应用共享常量、应用内共享常量、子工程内共享常量、包内共享常量、类内共享常量。

1 ) 跨应用共享常量:放置在二方库中,通常是 client . jar 中的 constant 目录下。

2 ) 应用内共享常量:放置在一方库的 modules 中的 constant 目录下。

反例:易懂变量也要统一定义成应用内共享常量,两位攻城师在两个类中分别定义 了表示“是”的变量:

类 A 中: public static final String YES = " yes " ;

类 B 中: public static final String YES = " y " ;

A . YES . equals(B . YES) ,预期是 true ,但实际返回为 false ,导致产生线上问题。

3 ) 子工程内部共享常量:即在当前子工程的 constant 目录下。

4 ) 包内共享常量:即在当前包下单独的 constant 目录下。

5 ) 类内共享常量:直接在类内部 private static final 定义。

5. 【推荐】如果变量值仅在一个范围内变化用 Enum 类。如果还带有名称之外的延伸属性,必须使用 Enum 类,下面正例中的数字就是延伸信息,表示星期几。

正例: public Enum {  MONDAY( 1 ) ,  TUESDAY( 2 ) ,  WEDNESDAY( 3 ) ,  THURSDAY( 4 ) ,  FRIDAY( 5 ) ,

SATURDAY( 6 ) ,  SUNDAY( 7 ); }


相关视频

更多

免费

php8,我来也
初级php8,我来也

322002次学习

收藏

免费

Thinkphp6.0正式版视频教程
中级Thinkphp6.0正式版视频教程

382593次学习

收藏

免费

细说PHP第一季
中级细说PHP第一季

283274次学习

收藏

免费

简单聊聊PHP创业那点事
初级简单聊聊PHP创业那点事

13425次学习

收藏

精品课程

更多
前端入门_HTML5
前端入门_HTML5

共29课时 | 62.5万人学习

CSS视频教程-玉女心经版
CSS视频教程-玉女心经版

共25课时 | 39.8万人学习

JavaScript极速入门_玉女心经系列
JavaScript极速入门_玉女心经系列

共43课时 | 73.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号