面试中,经常会遇到这样的情况,
问:谈谈运行时异常和非运行时异常?
答:运行时异常是指程序运行时发生的异常
问:那么非运行时异常又是什么时候发生?
答:。。。。。。
问:请罗列几个常见的运行时异常?
答:空指针异常,IOException,SQLException,数组越界异常。。。。
以上这样的场景非常常见,其实这是一个非常基础的问题,但发现大家常常搞混。
其实这个问题,我个人认为是取的这个名字误导了大家,运行时异常(Runtime exception)
这个名字正确的叫法应该是“逻辑错误”。
所以,现在你再回头看,这样的问题就非常容易区分了。
我们常见的运行时异常,比如“数组越界”,“空指针”,“算数异常”,“类型转换异常”,这些是不是都是因为我们程序的逻辑不够严谨而造成,所以叫“逻辑错误”更合适。
而像“IO异常”,“SQL异常”这些并非程序造成,而是外界因素造成,所以java提供了异常机制,让我们提前对这类问题做好预案处理,从而保证了程序的健壮性。
希望对你有所帮助。
--------------------- 本文来自 互联网十年老兵- 的优快云 博客 ,全文地址请点击:https://blog.youkuaiyun.com/happy_coding_life/article/details/80381312?utm_source=copy