学习阿里巴巴开发手册-4
来源:互联网 发布:桌面软件 知乎 编辑:程序博客网 时间:2024/06/06 00:02
1.避免通过类对象访问此类的静态变量和静态方法,直接用类名访问即可
2.覆写方法,必须加@Override注解,避免字母混淆 0和0
3.不提倡可变参数,相同参数类型,相同业务含义,使用java可变参数,避免使用Object
4.外部正在调用或者二方库依赖的接口,不允许修改方法签名。接口过时必须加@Deprecated注解,说明采用新接口和新服务等
5.不能使用过时的类和方法
6.Object的equals方法容易抛空指针异常,应使用常量或者是确定有值的对象来调用equals方法
7.所有相同类型的包装类对象之间值的比较,全部使用equals方法比较***
8.所有的POJO类属性必须使用包装数据类型;RPC方法的返回值和参数必须使用包装数据类型;所有局部变量使用基本数据类型
9.定义DO/DTO/VO等POJO类时,不要设定任何属性默认值
10.序列化类新增属性时,不要修改serialVersionUID;如果完全不兼容升级,避免反序列化混乱,请修改serialVersionUID
11.构造方法里面禁止加入任何业务逻辑,如果有初始化逻辑,放在init方法中。
12.POJO类中必须写toString方法,便于排查问题,如果继承了另一个POJO类,注意在前面加一下super.toString
13.当一个类有多个构造方法,或者多个同名方法,应该按顺序放置在一起,便于阅读
14.类内方法定义顺序依次是:公有方法或者保护方法>私有方法>get和set方法
15.setter方法中,参数名和类成员变量名一致 this.成员名=参数名 在getter和setter方法中不要增加业务逻辑,增加排查问题难度
16.循环体内,字符串的连接方式,使用StringBuilder的append方法进行扩展
17.final可以声明类,成员变量,方法,以及本地变量
使用final关键字情况
1)不允许被继承的类 如String类
2)不允许修改引用的域对象,如POJO类的域变量
3)不允许被重写的方法, 如POJO类的setter方法
4)不允许运行过程中重新赋值的局部变量
5)避免上下文重复使用一个变量
18.慎用Object的clone方法来拷贝对象(浅拷贝)
19.类成员与方法访问控制从严
1)不允许外部通过new来创建对象,构造方法必须是private
2)工具类不允许有public或default构造方法
3)类非static成员变量并且与子类共享,必须是protected
4)类非static成员变量并且仅在本类使用,必须是private
5)类static成员变量如果仅在本类使用,必须是private
6)static成员变量,必须考虑是否为final
7)类成员方法只供类内部调用,必须是private
8)类成员方法只对继承类公开,限制为protected
2.覆写方法,必须加@Override注解,避免字母混淆 0和0
3.不提倡可变参数,相同参数类型,相同业务含义,使用java可变参数,避免使用Object
4.外部正在调用或者二方库依赖的接口,不允许修改方法签名。接口过时必须加@Deprecated注解,说明采用新接口和新服务等
5.不能使用过时的类和方法
6.Object的equals方法容易抛空指针异常,应使用常量或者是确定有值的对象来调用equals方法
7.所有相同类型的包装类对象之间值的比较,全部使用equals方法比较***
8.所有的POJO类属性必须使用包装数据类型;RPC方法的返回值和参数必须使用包装数据类型;所有局部变量使用基本数据类型
9.定义DO/DTO/VO等POJO类时,不要设定任何属性默认值
10.序列化类新增属性时,不要修改serialVersionUID;如果完全不兼容升级,避免反序列化混乱,请修改serialVersionUID
11.构造方法里面禁止加入任何业务逻辑,如果有初始化逻辑,放在init方法中。
12.POJO类中必须写toString方法,便于排查问题,如果继承了另一个POJO类,注意在前面加一下super.toString
13.当一个类有多个构造方法,或者多个同名方法,应该按顺序放置在一起,便于阅读
14.类内方法定义顺序依次是:公有方法或者保护方法>私有方法>get和set方法
15.setter方法中,参数名和类成员变量名一致 this.成员名=参数名 在getter和setter方法中不要增加业务逻辑,增加排查问题难度
16.循环体内,字符串的连接方式,使用StringBuilder的append方法进行扩展
17.final可以声明类,成员变量,方法,以及本地变量
使用final关键字情况
1)不允许被继承的类 如String类
2)不允许修改引用的域对象,如POJO类的域变量
3)不允许被重写的方法, 如POJO类的setter方法
4)不允许运行过程中重新赋值的局部变量
5)避免上下文重复使用一个变量
18.慎用Object的clone方法来拷贝对象(浅拷贝)
19.类成员与方法访问控制从严
1)不允许外部通过new来创建对象,构造方法必须是private
2)工具类不允许有public或default构造方法
3)类非static成员变量并且与子类共享,必须是protected
4)类非static成员变量并且仅在本类使用,必须是private
5)类static成员变量如果仅在本类使用,必须是private
6)static成员变量,必须考虑是否为final
7)类成员方法只供类内部调用,必须是private
8)类成员方法只对继承类公开,限制为protected
阅读全文
0 0
- 学习阿里巴巴开发手册-4
- 学习阿里巴巴开发手册-1
- 学习阿里巴巴开发手册-2
- 学习阿里巴巴开发手册-3
- 阿里巴巴java开发手册学习
- 学习阿里巴巴开发手册-5
- 学习阿里巴巴开发手册-6
- 学习阿里巴巴开发手册-7
- 学习阿里巴巴开发手册-补充
- 学习阿里巴巴开发手册-8
- 学习阿里巴巴开发手册-9
- 学习阿里巴巴开发手册-10
- 学习阿里巴巴开发手册-11
- 学习阿里巴巴开发手册-12
- 学习阿里巴巴开发手册-13
- 学习阿里巴巴开发手册-14
- 学习阿里巴巴开发手册-15
- 阿里巴巴Java开发手册学习小结4-关于集合处理
- struts2+Spring服务器启动时Bean实例化失败,报ServletActionContext.getRequest空指针异常
- codeforces 171D Broken checker (多次尝试)
- 行为树(Behavior Tree)实践(1)– 基本概念
- 机器学习之kNN分类算法
- 回答阿里社招面试如何准备,顺便谈谈对于Java程序猿学习当中各个阶段的建议
- 学习阿里巴巴开发手册-4
- windows下利用Mingw和msmpi编译运行mpi并行程序
- LeetCode80 Remove Duplicates from Sorted Array II
- [模板]最小生成树 prim算法
- com.android.build.api.transform.TransformException:
- Stanford-CS231n深度视觉识别学习笔记
- LeetCode 231. Power of Two
- ios-SQLite
- 斯蒂芬.杜思齐教授担任剑桥大学校长的就职演说