Java开发手册之异常日志
2024-09-06 00:55:31
1.捕获异常的时候,有一种特殊情况,就是方法体内部所抛出的并不是Exception而是Error,这个时候,上层方法捕获Exception就会失败。所以在某些场合需要捕获更高一级别的Throwable。一般哪些情况会抛出Error而非Exception呢?因为编译器只会对于java文件进行编译,如果Java文件调用jar中的方法,jar中的方法再调用另一个jar中的方法,这样如果另一个jar中的方法不存在,则会躲过编译期检查,在运行期报NoSuchMethodError而不是Exception
2.不要在finally中使用return。说明:在try中使用了return返回了正确的值之后,又会调用finally中的代码,那么又return就会覆盖之前正确的return。
3.在日志输出的时候使用占位符而不要使用字符串拼接(其实在所有输出都应该如此,但是现代项目中除了日志,基本没有别的地方调用输出了)。说明:在字符串拼接的时候编译器会调用将字符串转换为StringBuilder再调用append方法,有性能损耗,而占位符就直接是替换,性能更好。
4.禁止使用System.out.println();和System.err.println();输出日志,因为这两个所指向的文件只有在重启的时候才会滚动刷新,不重启就一直往指向的文件里写入,会导致文件过大,超出操作系统限制。
最新文章
- jQuery AutoComplete 自动补全
- 利用Jquery给当前页或者跳转后页面的导航栏添加选中后样式
- 第二节Unity3D开发环境安装(windows系统)
- Go 性能分析
- tyvj 1067 dp 两次LIS(nlogn)
- 用jquery 实现 超出字符 截断加上省略号并且可以提示全部内容
- sharepoint 列表的column验证----------SharePoint 2010 List Validation Formula
- hdu 3333 树状数组
- 【多路复用】I/O多路复用
- 45种Javascript技巧大全【转藏】
- mysql获取当前日期的周一和周日的日期
- Linux文件名匹配和输出重定向--2019-4-24
- 【转】JRXlsExporter.setParameter常用参数说明
- R语言
- android 开发 View _8_ 动态图片自定义View
- 关于 version control
- Outlook 如何初始化邮箱
- Deep Learning 资料总结
- 170619、springboot编程之HelloWorld
- 学习笔记|Java 教程|菜鸟教程