阿里巴巴Java编程规则
哥的冷酷,你模仿不来
不要迷恋哥 哥只是一个传说
展开
-
(一)Java命名风格
说明:本文章是摘自阿里巴巴最新开发手册 1. 【强制】代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。 反例:_name / __name / $name / name_ / name$ / name__ 2. 【强制】代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。 说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,即使纯拼音命名...转载 2018-11-26 11:50:42 · 1456 阅读 · 0 评论 -
(二)常量定义
说明:本文章是摘自阿里巴巴最新开发手册 1. 【强制】不允许任何魔法值(即未经预先定义的常量)直接出现在代码中。 反例:String key = "Id#taobao_" + tradeId; cache.put(key, value); 2. 【强制】在 long 或者 Long 赋值时,数值后使用大写的 L,不能是小写的 l,小写容易跟数字 1 混淆,造成误解。 说明:Long a =...转载 2018-11-26 11:57:41 · 1628 阅读 · 0 评论 -
(三)代码格式
说明:本文摘自阿里巴巴Java开发手册 1. 【强制】大括号的使用约定。如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果 是非空代码块则: 1) 左大括号前不换行。 2) 左大括号后换行。 3) 右大括号前换行。 4) 右大括号后还有 else 等代码则不换行;表示终止的右大括号后必须换行 2. 【强制】左小括号和字符之间不出现空格;同样,右小括号和字符之间也不出现空格;而左大 括号...转载 2018-11-26 14:16:25 · 797 阅读 · 1 评论 -
(四)OOP 规约
说明:本文摘自阿里巴巴开发手册 1. 【强制】避免通过一个类的对象引用访问此类的静态变量或静态方法,无谓增加编译器解析成 本,直接用类名来访问即可。 2. 【强制】所有的覆写方法,必须加@Override 注解。 说明:getObject()与 get0bject()的问题。一个是字母的 O,一个是数字的 0,加@Override 可以准确判断是否覆盖成功。另外,如果在抽象类中对方法签名进行修...转载 2018-11-26 15:08:25 · 1265 阅读 · 0 评论 -
(五) 集合处理
1. 【强制】关于 hashCode 和 equals 的处理,遵循如下规则: 1) 只要重写 equals,就必须重写 hashCode。 2) 因为 Set 存储的是不重复的对象,依据 hashCode 和 equals 进行判断,所以 Set 存储的 对象必须重写这两个方法。 3) 如果自定义对象作为 Map 的键,那么必须重写 hashCode 和 equals。 说明:String 重写...转载 2018-11-26 15:59:55 · 548 阅读 · 0 评论