• 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html
  • 极客专栏正式上线!欢迎访问 https://www.jikewenku.com/topic.html

关于Java异常的九大问题

技术杂谈 勤劳的小蚂蚁 3个月前 (01-18) 86次浏览 已收录 0个评论 扫描二维码


本文总结了关于Java异常的9个常见问题

一、检查与未检查

简而言之,检查过的异常必须显式地在方法中捕获或在方法的throw子句中声明。

未检查异常是由无法解决的问题引起的,例如除以零、空指针等。

检查异常特别重要,因为您希望使用您的API的其他开发人员知道如何处理异常

二、异常管理的最佳实践

如果一个异常可以被正确处理,那么它应该被捕获,否则,它应该被抛出。

三、为什么try中定义的变量不能用于catch或finally中?

在下面的代码中,try块中声明的字符串s不能在catch子句中使用。
代码没有通过编译。


原因是你不知道在try块的什么地方会抛出异常。

异常很可能是在声明对象之前抛出的。

这个例子是正确的。

四、为什么Double、parseDouble(null)和Integer。parseInt(null)两个函数会抛出不同的异常?

抛出不同的异常?它们会抛出不同的异常,这是JDK的问题。

它们是由不同的开发人员开发的,所以不值得过多思考。


五、Java中常用的运行时异常

这里只是其中的一些。

非法数据异常,数组下标越界异常。

当条件不满足时,可在if语句中使用:


六、我们能在同一个catch子句中捕获多个异常吗?

答案是肯定的。

只要这些异常类可以追溯到类继承层次结构中的同一个超类,您就只能使用这个超类。

七、构造函数能抛出java中的异常吗?

答案是肯定的,构造函数是一种特殊的方法。

八、在final子句中抛出异常

这样做是合法的:


但是为了具有更好的代码可读性,您应该将嵌入的try-catch块包装为一个新方法,然后将方法调用放在finally子句中。


九、为什么开发人员会静默地使用异常?

像下面这样的代码段出现的次数太多了。

如果正确地处理异常是如此重要,那么开发人员为什么要一直这样做呢?


忽视很容易,频繁出现并不意味着正确。


丨极客文库, 版权所有丨如未注明 , 均为原创丨
本网站采用知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议进行授权
转载请注明原文链接:关于Java异常的九大问题
喜欢 (0)
[247507792@qq.com]
分享 (0)
勤劳的小蚂蚁
关于作者:
温馨提示:本文来源于网络,转载文章皆标明了出处,如果您发现侵权文章,请及时向站长反馈删除。

您必须 登录 才能发表评论!

  • 精品技术教程
  • 编程资源分享
  • 问答交流社区
  • 极客文库知识库

客服QQ


QQ:2248886839


工作时间:09:00-23:00