异常机制

久未见 提交于 2020-01-14 07:04:41

Java是采用面向对象的方式处理异常,过程如下:

1.抛出异常:
执行一个方法时,如果发生了异常,该方法会生成代表异常的一个对象,停止当前的执行路径,把这个异常对象提交给JRE。
2.捕获异常:
JRE得到该异常后,寻找相应的代码来处理该异常。JRE在方法的调用栈中查找,从生成异常的方法开始回溯,直到找到相应的异常处理代码为止。

Java的JDK中定义了很多异常类,如果内置的异常类不够满足需求,还可以自己创建异常类。Java中所有的异常对象都是派生于Throwable类的一个实例,不同的异常用不同的Java表示。

Throwable派生了两个子类:Error和Exception

Error是程序无法处理的错误,一般是较为严重的问题,大多数错误跟敲代码者无关,表示代码运行时JVM出现的问题。Error出现代表JVM已经处于不可恢复的崩溃状态,不用管它。

Exception是程序能够处理的异常,它是所有异常类的父类,对应了各种各样可能出现的异常事件。

Exception异常:1.运行时异常(RuntimeException) 2.已检查异常(CheckedException)

CheckedException有:
try-catch-finally    1.即使try和catch块中存在return语句,finally语句也会执行。是在执行完finally语句后再通过return退出。  2.finally语句块只有一种情况是不会执行的,那就是在执行finally之前遇到了System.exit(0)结束程序运行。
throws  1.方法重写中声明异常原则:子类重写父类方法时,如果父类方法有声明异常,那么子类声明的异常范围不能超过父类声明的范围。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!