T31项目-Day5分享(异常处理和日志规约)
作者:互联网
道路千万条,安全第一条。
日志不规范,排查两行泪。
前言
作为一个程序员,要对自己的代码有信心,稳定的代码块不应该放入tyr catch块。因为try catch 就需要moniter enter和moniter exit
一、异常处理设计与实践?
生成异常->捕获异常->抛出异常->声明异常
1.异常抛出与捕获的原则
(1) 非必要不使用异常
(2)使用描述性消息抛出异常
(3)力所能及的异常一定要处理
(4)异常忽略要有理有据
2.java异常体系try…catch…finally流程解析
3.特色NPE(Null Pointer Exception)场景以及处理对策
对策:使用Optional优雅的防止NPE
4.foreach遍历集合的异常
1.不要在foreach循环里面进行remove/add操作
2.foreach循环会自动跳过遍历空集合,如果对于有null的集合,碰到null时需要注意NPE
日志记录规约
1.系统应依赖使用日志框架(SLF4J,JCL)的API而不是具体日志库中的
错误码规约
1.定义时要有字母也要有数字
2.要分级管理
3.不能输出给用户作为提示信息使用
4.不要与业务架构或者组织架构挂钩
5.使用者避免随意定义新的错误码
6.便于不同语言之间的开发
标签:规约,Day5,NPE,foreach,catch,日志,异常,T31 来源: https://blog.csdn.net/weixin_43722048/article/details/121055842