美文网首页Java webspringboot
Exception 和 RuntimeException

Exception 和 RuntimeException

作者: 牛初九 | 来源:发表于2018-12-19 14:05 被阅读0次

    Exception 和 RuntimeException都是异常,他们有什么区别呢?是不是面试的时候经常被问道?今天我们就好好聊聊Exception和RuntimeException。

    概念

    1. Exception :受检查的异常,这种异常是强制我们catch或throw的异常。你遇到这种异常必须进行catch或throw,如果不处理,编译器会报错。比如:IOException。

    2. RuntimeException:运行时异常,这种异常我们不需要处理,完全由虚拟机接管。比如我们常见的NullPointerException,我们在写程序时不会进行catch或throw。

    RuntimeException也是继承自Exception的,只是虚拟机对这两种异常进行了区分。小伙伴在编写自己的异常时,要选好继承哪个异常哦~~

    实例

    接下来,我们看看在实际编写程序时,会有什么表现。首先,我们写一个MyTest类,并写两个抛出异常的方法。如下图:

    image

    打开UC浏览器 查看更多精彩图片

    第一个方法抛出Exception,第二个方法抛出RuntimeException。然后,我们编写main函数,分别调用两个方法,如下图:

    image

    打开UC浏览器 查看更多精彩图片

    我们看到在调用第一个方法时,编译器提示我们要处理异常,进行try-catch或者在方法上将异常抛出。而在调用第二个方法时,并没有提示我们进行异常处理。这也就是Exception和RuntimeException的区别。大家了解了吗?

    大家如有任何疑问,欢迎在评论区讨论~~

    相关文章

      网友评论

        本文标题:Exception 和 RuntimeException

        本文链接:https://www.haomeiwen.com/subject/qahjkqtx.html