博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
慎用异常(Exception)
阅读量:5883 次
发布时间:2019-06-19

本文共 412 字,大约阅读时间需要 1 分钟。

  hot3.png

异常对性能不利。

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/

转载于:https://my.oschina.net/aruan/blog/425288

你可能感兴趣的文章
ionic 调用手机的打电话功能
查看>>
怎么使用阿里云直播服务应用到现在主流直播平台中
查看>>
1000 加密算法
查看>>
exif_imagetype() 函数在linux下的php中不存在
查看>>
Ruby的case语句
查看>>
Linux的链接文件-ln命令
查看>>
maven的tomcat插件如何进行debug调试
查看>>
table表头固定
查看>>
截取字符串中两个字符串中的字符串
查看>>
spring xml properties split with comma for list
查看>>
判断点是否在三角形内
查看>>
Android实战简易教程-第二十三枪(基于Baas的用户注冊验证username是否反复功能!)...
查看>>
在odl中怎样实现rpc
查看>>
leetcode 110 Balanced Binary Tree
查看>>
项目开发总结
查看>>
知行合一
查看>>
jmeter插件之jsonpath提取响应结果和做断言
查看>>
发布支持多线程的PowerShell模块 —— MultiThreadTaskRunner
查看>>
Ubuntu ctrl+alt会导致窗口还原的问题
查看>>
推荐系统那点事 —— 基于Spark MLlib的特征选择
查看>>