,不会再执行try块中的return语句
捕获异常与抛出异常必须完全匹配,或者是抛异常的父类
方法的返回值可以为null,不强制返回空集合或者空对象等,必须添加注释充分说明什么情况下会返回null值...包装数据类型的对象时, 自动拆箱有可能产生NPE
数据库的查询结果可能为null
集合里的元素即使isNotEmpty, 取出的数据元素也可能为null
远程调用返回对象时,一律要进行空指针判断,防止NPE...:
DAOException
ServiceException
对于公司外的http或者api开放接口必须使用 "错误码"; 应用内部推荐异常抛出; 跨应用间的RPC调用优先考虑使用Result方式,...error message, 对于调用端解决问题的帮助不会太多.如果加了栈信息,在频繁调用出错的情况下,数据序列化和传输的性能损耗也是问题
避免出现重复的代码,即DRY(Don't Repeat Yourself...warn来记录刚上线时的业务行为信息,一定要注意日志输出量问题,避免服务器内容过多,并及时删除这些观察日志
大量地输出无效日志,不利于系统性能的提升,也不利于快速定位错误点
记录日志时需要思考:
这些日志真的有人看吗