美文网首页
Exception与RuntimeException有什么异同

Exception与RuntimeException有什么异同

作者: ambitioner | 来源:发表于2016-10-26 20:38 被阅读131次

    这个问题是我面试的时候遇到的一个题目, 较真的说题目不对。应该是RuntimeException和非RuntimeException的区别。

    因为Exception是RuntimeException的父类。如果是非RuntimeException,如果在定义方法的时候抛出异常,在调用该方法

    的地方必须使用try{}catch{}来捕获异常。但是对于RuntimeException来说不需要。jvm会对该异常进行处理,但是会中断程序

    运行。所以建议也对RuntimeException进行try catch。

    如果是自定义异常,应该继承Exception,因为你肯定想自己捕捉进行相应的处理,而不是交给jvm处理。

    常见的RuntimeException:

    NullPointerException - 空指针引用异常

    ClassCastException - 类型强制转换异常。

    IllegalArgumentException - 传递非法参数异常。

    ArithmeticException - 算术运算异常

    ArrayStoreException - 向数组中存放与声明类型不兼容对象异常

    IndexOutOfBoundsException - 下标越界异常

    NegativeArraySizeException - 创建一个大小为负数的数组错误异常

    NumberFormatException - 数字格式异常

    SecurityException - 安全异常

    UnsupportedOperationException - 不支持的操作异常

    相关文章

      网友评论

          本文标题:Exception与RuntimeException有什么异同

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