首页 > 其他 > 详细

慎用异常(Exception)

时间:2015-06-05 15:55:34      阅读:288      评论:0      收藏:0      [点我收藏+]

异常对性能不利。

1.抛出异常首先要创建一个新的对象。

2.Throwable接口的构造函数调用名为fillInStackTrace()的Native方法,fillInStackTrace()方法检查堆栈,收集调用跟踪信息。只要有异常被抛出,VM就必须调整调用堆栈,因为在处理过 程中创建了一个新的对象。

因此,异常只能用于错误处理,不应该用来控制程序流程。

如果频度很高的抛出异常,性能下降是很巨大的,参见stackoverflow上的一篇文章

http://stackoverflow.com/questions/299068/how-slow-are-java-exceptions

http://java-performance.info/throwing-an-exception-in-java-is-very-slow/

慎用异常(Exception)

原文:http://my.oschina.net/aruan/blog/425288

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!