zoukankan      html  css  js  c++  java
  • Error与Exception的异同

    Error(错误)和 Exception(异常)都是 java.lang.Throwable 类的子类,在 Java 代码中只有继承了 Throwable 类的实例才能被 throw 或者 catch。
    Exception 和 Error 体现了 Java 平台设计者对不同异常情况的分类,Exception 是程序正常运行过程中可以预料到的意外情况,并且应该被开发者捕获,进行相应的处理。Error 是指正常情况下不大可能出现的情况,绝大部分的 Error 都会导致程序处于非正常、不可恢复状态。所以不需要被开发者捕获。
    Error 错误是任何处理技术都无法恢复的情况,肯定会导致程序非正常终止。并且 Error 错误属于未检查类型,大多数发生在运行时。Exception 又分为可检查(checked)异常和不检查(unchecked)异常,可检查异常在源码里必须显示的进行捕获处理,这里是编译期检查的一部分。不检查异常就是所谓的运行时异常,通常是可以编码避免的逻辑错误,具体根据需要来判断是否需要捕获,并不会在编译器强制要求。

    如下是常见的 Error 和 Exception:

    1)运行时异常(RuntimeException):

    NullPropagation:空指针异常;

    ClassCastException:类型强制转换异常

    IllegalArgumentException:传递非法参数异常

    IndexOutOfBoundsException:下标越界异常

    NumberFormatException:数字格式异常
    2)非运行时异常:

    ClassNotFoundException:找不到指定 class 的异常

    IOException:IO 操作异常


    3)错误(Error):

    NoClassDefFoundError:找不到 class 定义异常

    StackOverflowError:深递归导致栈被耗尽而抛出的异常

    OutOfMemoryError:内存溢出异常

     

    欢迎大家批评指正,指出问题,谢谢!

  • 相关阅读:
    如何打开指定文件所在的文件夹并选中文件
    不阻止多线程中控件跨线程访问
    .NET使用并行计算 提高执行效率
    关于线程安全中Lock的一些说明
    多线程中调用多参数的方法
    C#把汉字转换成拼音
    跨窗体Invoke时使用匿名方法或者带参方法
    给MP3音乐文件写ID3信息和专辑封面
    用Python作GIS:菜谱篇
    python中对象self的由来
  • 原文地址:https://www.cnblogs.com/yhcTACK/p/15412848.html
Copyright © 2011-2022 走看看