Java异常之异常机制

    Java异常处理机制依赖5个关键字try,catch,finally,throw,throws。try关键字后跟着可能出现异常的代码块,catch后面对应异常的类型和捕获到异常后处理异常的代码块,finally后的代码块是程序必定会执行的,通常用于回收物理资源,throw用于抛出一个实际的异常,throws做为方法的签名,声明一个方法可能会抛出的异常。数组

    在一个项目中,最理想的状态,就是项目没有异常,从实际开发来讲,就是在程序运行以前,就能检测到全部的异常并处理,可是这是不现实的,由于开发者不可能预知所有错误。因此,从这个角度来讲,Java异常机制将异常分为两大类,Runtime异常和Checked异常。Checked异常是指:Java认为这类异常必须在编译阶段处理,若是这类异常不被处理,编译失败。处理方式主要有两种:1.当前方法知道该如何处理异常,那就使用catch关键字捕获异常,处理异常  2.当前方法不知道该如何处理异常,那就使用throws关键字抛出异常。Runtime异常是指:一些异常处理繁琐,来源复杂,例如空指针、数组越界、除数为0等异常,若是对这些异常进行捕获,会致使程序变得复杂,运行效率下降,可读性差。所以,由系统负责检测这类异常。spa

    通常来讲,当程序出现异常时,无论是Runtime异常仍是Checked异常,系统自动生成一个异常对象,并提交给Java运行时环境,这个过程称为抛异常。当Java运行时环境收到异常对象时,会寻找能处理该异常的catch块,若是找到了就由catch块来处理,这个过程叫捕获异常;若是找不到合适的catch块,运行时环境就会终止,Java程序就此退出。指针

相关文章
相关标签/搜索